我正在使用Kendo Multi Select.我想将所选值加载到多选中.如何在
Java Script中设置数据值?我有以下脚本:
$('#selectedFilters').kendoMultiSelect({ dataSource: data,dataTextField: 'name',dataValueField: 'value',filter: 'contains',placeholder: "Add Filter",delay: 0,minLength: 2,highlightFirst: true,ignoreCase: true,change: function (event) { applyFilters(); },});
解决方法
您可以使用
value()
方法设置值.
例如,给出以下HTML:
<a href="#" id="button" class="k-button">Select</a> <input id='selectedFilters'>
和JavaScript:
var data = [ { name : "name1",value : "value1" },{ name : "name2",value : "value2" },{ name : "name3",value : "value3" },{ name : "name4",value : "value4" },{ name : "name5",value : "value5" },{ name : "name6",value : "value6" } ]; var multiselect = $('#selectedFilters').kendoMultiSelect({ dataSource : data,dataTextField : 'name',filter : 'contains',placeholder : "Add Filter",delay : 0,minLength : 2,ignoreCase : true,change : function (event) { console.log("change"); } }).data("kendoMultiSelect"); $("#button").on("click",function () { console.log("multiselect",multiselect); multiselect.value(["value1","value2","value6"]); });
如果单击按钮,则多值输入将获得:name1,name2和name6.
编辑如果要添加到当前选定的值,请执行以下操作:
$("#button").on("click",function () { var selected = multiselect.value(); var res = $.merge($.merge([],selected),["value1","value6"]); multiselect.value(res); });
注意:由于某种原因,您无法重复使用所选数组来设置新值,因此您应该创建一个新值.
检查它运行here