$("#CustomerName").autocomplete({
//source: "/Test/Project/GetCompanySelectJson",
source: [{ "label": "江苏灯为有限公司", "value": 2 }, { "label": "城中投资发展有限公司", "value": 4 }, { "label": "国啦为要", "value": 5 }],
select: function (event, ui) {
$("#CustomerName").val(ui.item.label);
$("#CustomerId").val(ui.item.value);
event.preventDefault();
}
});使用上面的Source,autocomplete会索引出全部记录,而不是按输入的关键字,通过F12查看获得的数据,就是下面的Source值,换成下面的Source是正常使用,也就是说代码应该是没有问题的,为什么上面的Source就索引全部呢?
2 回答
MMTTMM
TA贡献1869条经验 获得超4个赞
表示不想研究autocomplete源码,不过我可以给出你另外的解决办法
既然固定的source是正常的,那么可以尝试自己ajax获取source然后初始autocomplete
$.ajax({type:'GET',url:'your url', success:function(res){
var source = JSON.parse(res)
$("#CustomerName").autocomplete({ source:source })
}}
另外一方面,autocomplete的url方式的source应该是需要你服务器去做筛选,你可以查看请求是否附带了关键字
一只名叫tom的猫
TA贡献1906条经验 获得超3个赞
你这个感觉就是异步引起的问题 建议你先用ajax获取数据 不要直接用url 设置下同步 $.ajaxSettings.async = false;
- 2 回答
- 0 关注
- 701 浏览
添加回答
举报
0/150
提交
取消