2

鉴于http://jsfiddle.net/MG89G/271/ ,我的问题是在下拉列表中的复选框通过多选更改后过滤Kendo UI网格。我想用 orderID 过滤网格。

  I got the solution with single selection http://jsfiddle.net/schapman/HyHZG/5/.

但是如何使用多选下拉列表呢?

4

4 回答 4

1

您可以在 Grid 中集成相同的方法,只需稍加调整即可删除 data-bind 属性。

这是一个例子

于 2014-03-07T11:20:33.853 回答
0

我创建了这个:

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")));
于 2013-08-28T17:47:06.723 回答
0

剑道团队添加了一个新的多选框。这是使用一个过滤网格的示例。

http://jsbin.com/ameyam/1/edit

于 2013-03-29T17:57:32.557 回答
0

新版本的剑道 ui 支持此属性

http://demos.telerik.com/kendo-ui/grid/filter-multi-checkboxes

于 2015-03-24T16:01:29.473 回答