我遇到了Kendo AutoComplete的问题。我有一个包含几个字段的表单,我想在其中应用AutoComplete Widget。其中一些字段是在用户执行某些操作后动态创建的。
这就是我的所作所为:
function myAutoComplete() {
$("input.autocomplete").each(function() {
//...Some code...
//Kendo AutoComplete
$(this).kendoAutoComplete({
//Data
dataSource: new kendo.data.DataSource({
//URL
transport: {
read: {
url : "utils/autocomplete.php",
data : {case: acCase, ent: $(prefixTarget + ' input[id*="entreprise_id"]').val()},
cache : false
}
},
schema: {
data: "data"
}
}),
select: function(e){
var dataItem = this.dataItem(e.item.index());
switch (acCase) {
case 1 :
$(prefixTarget + ' input[id*="'+selectorTarget+'"]').val(dataItem.CLI_NUM);
break;
case 2 :
$(prefixTarget + ' input[id*="'+selectorTarget+'"]').val(dataItem.ENT_NUM);
break;
case 3 :
$(prefixTarget + ' input[id*="'+selectorTarget+'"]').val(dataItem.SUC_NUM);
break;
case 4 :
$(prefixTarget + ' input[id*="'+selectorTarget+'"]').val(dataItem.id);
break;
}
},
filter: "contains",
highlightFirst: true,
suggest: true,
dataTextField: "SearchField"
//End Kendo AutoComplete
});
//End each
});
//End function
};
当文档准备好或创建新元素时,将调用此函数。一切正常!
我注意到,当用户第一次在字段中输入内容时,只调用一次dataSource。我想做的是每次用户进入某个字段时调用“dataSource”,因为“transport”中传递的某些数据可能已被更改。在某种程度上,我只想再次调用名为“autocomplete.php”的文件,以使用新参数进行新查询。
我在互联网和Kendo UI的文档中进行了搜索,但没有找到如何制作它。
有人可以向我解释我做错了吗?