我有下面提到的代码,用于验证用户是否输入了仅在自动完成菜单中可用的数据,如果有效,则会移动到下一个文本框。
$("#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
但如果我使用鼠标点击选择一个值,则此代码无效。焦点仍在自动填充文本框中。
答案 0 :(得分:0)
代码运行正常。我做的唯一改变是从jQuery UI Autocomplete 1.8.2转移到jQuery UI Autocomplete 1.8.11,问题解决了。