http://jsfiddle.net/MG89G/271/を考えると 、私の問題は、複数選択のドロップダウンリストでチェックボックスが変更された後、KendoUIグリッドをフィルタリングすることです。orderIDでグリッドをフィルタリングしたい。
I got the solution with single selection http://jsfiddle.net/schapman/HyHZG/5/.
しかし、複数選択ドロップダウンリストでそれを行うにはどうすればよいですか?
http://jsfiddle.net/MG89G/271/を考えると 、私の問題は、複数選択のドロップダウンリストでチェックボックスが変更された後、KendoUIグリッドをフィルタリングすることです。orderIDでグリッドをフィルタリングしたい。
I got the solution with single selection http://jsfiddle.net/schapman/HyHZG/5/.
しかし、複数選択ドロップダウンリストでそれを行うにはどうすればよいですか?
グリッド内で同じアプローチを少し調整して統合し、データバインド属性を削除できます。
これが例です。
剣道チームは新しいMultiSelectボックスを追加しました。これは、1つを使用してグリッドをフィルタリングするサンプルです。
私はこれを作成します:
var dropdown = $(selector).kendoDropDownList({
template: $("#general-templates .multiselect-item").html(),
select: function(e)
{
var dropdownlist = this;
var dataItem = this.dataItem(e.item.index());
if(dataItem.value==="")
{
e.item.closest("ul").find("span").each(function(){
$(this).css("display","none");
});
dropdownlist.text(dataItem.text);
dropdownlist.element.closest(".field-group").find("input[type='hidden']").val("");
return;
}
if(e.item.find("span").css("display")==="none")
e.item.find("span").css("display","");
else
e.item.find("span").css("display","none");
var values = [];
var labels = [];
e.item.closest("ul").find("span").each(function(){
if($(this).css("display")==="none")
return;
values.push($(this).attr("data-value"));
labels.push($(this).parent().text());
});
if(values.length===0)
labels.push(e.item.closest("ul").find(".dropdownlist-item:first").text());
dropdownlist.element.closest(".field-group").find("input[type='hidden']").val(values.join(","));
setTimeout(function(){
dropdownlist.value("999");
dropdownlist.text(labels.join(","));
},50);
}
}).data("kendoDropDownList");
var select = dropdown.wrapper.find("select");
dropdown.wrapper.append("<input type='hidden' class='filter' value='' data-field='{0}' data-operator='{1}'>".format(select.attr("data-field"),select.attr("data-operator")));
新しいバージョンの剣道UIはこのプロパティをサポートします
http://demos.telerik.com/kendo-ui/grid/filter-multi-checkboxes