jQuery - 专注于输入字段时运行一个函数

Ale*_*lex 2 javascript forms jquery json input

我有一个文本输入字段,当您单击json请求时会触发该字段,并且会检索一些数据.

$("input").focus(function(){
 var thefield = $(this);
 $.getJSON("http://www.blabla.com/bla",
    function(data){
      alert(JSON.stringify(data));  
          thefield.val('blabla');
    }
   );  
});
Run Code Online (Sandbox Code Playgroud)

我怎么能这样做这个请求只运行一次而不是每次我专注于文本字段?但是data当我关注第2次,第3次等时,我仍然想要可用.

rom*_*man 8

$('input').one('focus', function() {
    // load data using ajax
    $(this).data('ajax-data', data);
});
$('input').focus(function() { $(this).val($(this).data('ajax-data')); });
Run Code Online (Sandbox Code Playgroud)