【发布时间】:2013-09-08 21:47:21
【问题描述】:
我有一个包含 3 个选项的 Kendo DropDownList (name=Function)。选择一个选项时,它会触发AJAX调用以获取数据以填充不同的DropDownList(name =父母)。这按预期工作。但是,如果用户随后将原始 DropDownList“Function”更改回不同的选择,我需要清除/重置(删除所有选项)并禁用“Parents”DropDownList。
function LoadKendoDropdownContents(dropdownBoxId, data) {
var dropdownBox = $("#" + dropdownBoxId).data("kendoDropDownList");
if (data === "" || data === null || $.isEmptyObject(data)) {
var dataSource = [];
}
else {
var dataSource = data;
}
dropdownBox.setDataSource(dataSource);
}
真的是“var dataSource = []”给我带来了问题。就像“父母” DropDownList 在应用时不会刷新/重新绑定。除了选择的选项之外的所有选项都被删除,但是如何删除之前选择的选项?我希望它再次“空”。
谢谢。
---- 我使用的解决方案----
function LoadKendoDropdownContents(dropdownBoxId, data) {
var dropdownBox = $("#" + dropdownBoxId).data("kendoDropDownList");
if (data === "" || data === null || $.isEmptyObject(data)) {
var dataSource = new kendo.data.DataSource({
data: []
});
dropdownBox.text(" --- ");
dropdownBox.value(-1);
}
else {
var dataSource = new kendo.data.DataSource({
data: data
});
dropdownBox.text("[Select]");
dropdownBox.value(-1);
}
dropdownBox.setDataSource(dataSource);
}
【问题讨论】:
-
我还发现 dropdownBox.value(-1) 不起作用。一旦选择了一个值,似乎不可能“取消选择”所有值。
标签: javascript kendo-ui kendo-asp.net-mvc