我在改变事件中使用了Kendo Combobox我使用Jquery Ajax调用控制器操作。第一次在选择Combobox中的任何项目时,Action被调用,我得到了所需的数据。 但是在ComboxBox焦点输出(当我点击屏幕上的任何位置时)正在调用相同的动作。 我的剑道组合框如下:
$("#Number").kendoComboBox({
dataTextField: "NUM",
dataValueField: "ID",
dataSource: new kendo.data.DataSource({
transport: {
read: {
url: ResolveUrl("/CreateMaintainAnalysis/GetAnalysisNumbers/"),
type: "POST",
dataType: "json",
data: function () {
return {
Number: $("#Number").data("kendoComboBox").input.val()
};
}
},
},
requestEnd: function (e) {
if (WebApp.CLAF.LoggedInUser.Info.IS_ANALYST == 'Y') {
e.response.unshift({ ID: -1, NUM: 'Create New Analysis' });
}
else {
e.response.unshift({ ID: -2, NUM: 'Select' });
}
},
serverFiltering: true
}),
filter: "startwith",
suggest: true,
minLength: 5,
highlightFirst: true,
index:0,
change: function (dataItem) {
$.ajax({
type: "POST",
data: { ID: ID },
url: ResolveUrl("/Analysis/Data"),
success: function (result) {
},
});
}
});
这真是非常奇怪的行为,我无法赶上它。
答案 0 :(得分:0)
内部数据源请添加 autoBind: false
,默认情况下为 true,并且通常这是在任何焦点输入/输出或点击事件时从内部发送额外 API 调用的原因。