Javascript jQuery自动完成中的限制结果是';行不通
我已经在StackOverflow中浏览了很多答案,我想以前没有人有过这个问题。这有点奇怪,但是当我试图在jQuery自动完成中限制结果时,它就是不起作用 我不知道我能在这里粘贴什么,所以我会粘贴一小段代码,你告诉我缺少什么Javascript jQuery自动完成中的限制结果是';行不通,javascript,jquery,autocomplete,Javascript,Jquery,Autocomplete,我已经在StackOverflow中浏览了很多答案,我想以前没有人有过这个问题。这有点奇怪,但是当我试图在jQuery自动完成中限制结果时,它就是不起作用 我不知道我能在这里粘贴什么,所以我会粘贴一小段代码,你告诉我缺少什么 $("input[type=search]").autocomplete({ delay: 0, autoFocus: true, source: function (request, response) { populate(req
$("input[type=search]").autocomplete({
delay: 0,
autoFocus: true,
source: function (request, response) {
populate(request.term, response);
result = $.ui.autocomplete.filter(result, request.term)
response(result.slice(0, 10));
}
});
我不知道我做错了什么,但当我去我的搜索,这就是不工作!我仍然看到了很多结果
如何解决此问题?看起来您可能混淆了源选项和响应选项 检查文档,看看这样设置是否有帮助:
$("input[type=search]").autocomplete({
delay: 0,
autoFocus: true,
source: function (request, response) {
// return data you want to search against
},
response: function(event, ui) {
// manipulate result data in ui.content and return
}
}
})) 对我有效的方法是这样引用事物
<script>
$(":input[data-autocomplete]").each(function () {
$(this).autocomplete({
delay: 0,
autoFocus: true,
source: $(this).attr("data-autocomplete"),
select: function (event, ui) {
if (ui.item) {
alert(ui.item.id);
}
}
});
});
</script>
$(“:输入[数据自动完成]”)。每个(函数(){
$(此)。自动完成({
延迟:0,
自动对焦:对,
来源:$(this.attr(“数据自动完成”),
选择:功能(事件、用户界面){
if(ui.item){
警报(ui.item.id);
}
}
});
});
然后,使用标准javascript数据引用自动完成服务器端脚本的位置
<input type="text" data-autocomplete="/Home/QuickSearch" />
这允许多个快速搜索,还可以处理更改对服务器端位置的引用
在您自己的代码中,如果保留开头行,请确保将输入类型设置为“搜索”
<input type="search" />