在我的代码中,我将一个keyup
事件绑定到我的输入以检查输入值的长度是否为 3。如果是,我对服务器进行 Ajax 调用,从我的数据库中获取以输入的这 3 个字符开头的记录,然后启动 jQuery使用源自动完成 - 来自数据库的数据。
问题是当用户输入三个字符时,我得到了自动完成的来源,只有当他输入第四个字符时,自动完成才开始。是否有可能改变这种行为,只要你输入 3 个字符并让源代码开始自动完成?
这是我的代码:
var keypresshandler = function () {
var strin = document.getElementById('txtInput').value;
newstr = strin.replace(/[^\u0400-\u04FF0-9]/gi, '');
if (newstr.length<3)
{
$( "#txtInput" ).autocomplete( "destroy" );
} else
if (newstr.length==3)
{
triming();
}
}
$(function() {
$('#txtInput').bind('keyup', keypresshandler);
});
function triming() {
//make asynchronous ajax call to server to get the source of my autocomplete
// alert (mec.length);
$( "#txtInput" ).autocomplete({source: mec});
}
}