使用鼠标单击将焦点放在从自动完成菜单中选择值

时间:2011-04-11 06:07:16

标签: jquery jquery-ui jquery-autocomplete

我有下面提到的代码,用于验证用户是否输入了仅在自动完成菜单中可用的数据,如果有效,则会移动到下一个文本框。

$("#Text1").autocomplete({ source: function(req, responseFn) { 
  var re = $.ui.autocomplete.escapeRegex(req.term);         
  var textinput = new RegExp( "" +re, "i" );      
  var match = $.grep( crtfdesc, function(item,index){           
  return textinput.test(item);         
  });       
  responseFn( match ); 
  }, 
  change: function(event, ui){var flag;
    var cval=$(this).val();
    var len=crtfdesc.length;

    for(var c=0;c<len;c++)
    {
        if(cval==crtfdesc[c]){ flag=1;$("#text2").focus();break;}
        else
        { flag=2;}
    }
 if(flag==2){$(this).val("");}

  },
  select: function(event, ui){
        $("#text2").focus(); 
  }
});//Text1

但如果我使用鼠标点击选择一个值,则此代码无效。焦点仍在自动填充文本框中。

1 个答案:

答案 0 :(得分:0)

代码运行正常。我做的唯一改变是从jQuery UI Autocomplete 1.8.2转移到jQuery UI Autocomplete 1.8.11,问题解决了。