我有一个包含 json 格式数据的静态 json 文件。现在,我已经使用 jquery 插件实现了自动完成功能。我的问题是自动完成显示所有结果,包括不必要的结果。按照我的javascript代码,
$('input#searchBox').autocomplete({
source: function( request, response ) {
$.ajax({
url: "${pageContext.request.contextPath}/products_cache.json",
dataType: "json",
data: {term: request.term},
success: function(data) {
response($.map(data.products, function(item) {
return {
value: item.product,
label: item.product,
key: item.id
};
}));
}
});
},
minlength:2,
select: function(event, ui) {
$("#searchBox").val(ui.item.key);
},
open: function() {
$( this ).removeClass( "ui-corner-all" ).addClass( "ui-corner-top" );
},
close: function() {
$( this ).removeClass( "ui-corner-top" ).addClass( "ui-corner-all" );
}
});
我的 json 文件包含以下格式的数据,
{
"products": [
{
"id":"1",
"product": "product1"
},
{
"id":"2",
"product": "product2"
},
{
"id":"3",
"product": "product3"
},
{
"id":"4",
"product": "product4"
},
{
"id":"5",
"product": "product5"
}
]
}
理想情况下,当我提供像 ab 这样的输入时,自动完成不应该提供任何建议。如何过滤掉不需要的值?