我有Kendo multiSelect控件,它工作得非常好。但是我面临重置其选定值的问题。以下是我到目前为止所尝试的内容:
$("#Department option:selected").removeAttr("selected");
和
var departmentMultiselect = $('#Department').data("kendoMultiSelect");
var subtract = $('#department').val();
var values = departmentmultiselect.value().slice();
values = $.grep(values, function (a) {
return $.inarray(a, subtract) == -1;
});
departmentmultiselect.datasource.filter({});
departmentmultiselect.value(values);
在第二个代码中,控制绕过以下代码
values = $.grep(values, function (a) {
return $.inarray(a, subtract) == -1;
});
如何重置此控件?
答案 0 :(得分:28)
取消选择kendo multiselect中的所有值:
var multiSelect = $('#Department').data("kendoMultiSelect");
multiSelect.value([]);
答案 1 :(得分:1)
我有同样的问题,但是想从多选而不是一切中删除一个值。这就是我想出的:
var multiselect = $('#multiSelectId').data("kendoMultiSelect");
var values = multiselect.value().slice();
// optionId is the value I want to remove
var index = $.inArray(optionId, values);
if (index > -1) {
values.splice(index, 1);
}
multiselect.dataSource.filter({});
multiselect.value(values);
答案 2 :(得分:0)
我尝试了上面的解决方案,除了我之外,它最终重复了当前现有的多重选择,而没有任何选择。我想要的那种但是重复。有没有更好的办法?感谢。
Heres my declaration in case it helps function createUsernameMultiSelect() { $('#usernamesFilter').kendoMultiSelect({ autoClose: true, dataTextField: "Username", dataValueField: "UsernameValue", dataSource: { transport: { read: { type: "POST", async: false, url: "/Dashboard/GetDashboardData", dataType: "json", data: { dashboardCode: "12", } } }, }, change: onUsernameChange, select: onUsernameSelect, });
答案 3 :(得分:0)
将多选设置为您的占位符值
var multiselect = $("#ICD10CodeIds").data("kendoMultiSelect");
multiselect.value(0);