第一次查询数据后(北京),补全的正常,但是再次查询,更新数据后(天津),补全出的还是老数据(北京),只有多触发一次autocomplete,补全才会显示新的数据(天津),求帮忙
$scope.getZhi = function() {
$scope.bankCodeZhi = "";
$('#searchBox2').val("");
if($scope.city != '0000'){
var formData1 = {
Type:'3',
BankCodeZong:$scope.bankCodeZong,
ShiCode:$scope.city
};
$scope.post2SRV("../WebQueryBigAmountInfo.do", formData1,function(data){
$scope.BankListZhi = data.BankListZhi;
can2 = new Array();
for ( var i = 0; i < data.BankListZhi.length; i++) {
var bankNameZhi = data.BankListZhi[i].BANKNAME;
can2.push(bankNameZhi);
}
});
}
}
---------------------------------------
$('#searchBox2').autocomplete(can2,{minChars:0,matchContains:true,pageType:'1',max:9999});
debug发现,补全时can2是正确的,那问题就在于页面显示的下拉框的值怎么和can2里的不一样-_-||
依据你的描述插件应该是克隆了你的数组或者将数组项已经生成dom对象,查询时并不是直接引用原来的变量值而且查询克隆的数组或者dom对象。所以你更新can2没用
只能执行一次重新构造autocomplete罗。。~
是的呀,每次查询后都在页面最后加了一个div,可恨的是匹配时是从所有的div里匹配……我试着每次查询前删除所有这种div,于是傻眼了……页面上不止一处补全框,想删除的只是一部分,现实就是拆了东墙补西墙