Kendo网格输入数据角色下拉列表

时间:2013-06-08 12:29:22

标签: drop-down-menu grid kendo-ui

使用Kendo Grid

我正在尝试使用模板基于下拉列表创建网格列。有人可以提供样品(如果可能的话)吗?

如果我要制作网格(可编辑:true),我知道如何完成此操作,但如果我这样做,我会遇到新问题...首次使用后,datepicker代码不再起作用,因此我正在寻求一个下拉列表的模板选项。

 { field: 'Uom' , width:"100px", template: '<input data-role="dropdownlist" data-bind="value:Uom" />' },
 { field: 'DeliveryDate' , format:"{0:yyyy-MM-dd}", width: "190px",  template: '<input data-role="datepicker" data-bind="value:DeliveryDate"  />' },

谢谢!

2 个答案:

答案 0 :(得分:0)

DropDownList的MVVM绑定属性应如下所示:

<select data-role="dropdownlist"
            data-text-field="name" data-value-field="value" data-bind="source: allUomOptions, value: uom"></select>

但是如果DatePicker在编辑模式下无法正常工作,那么该问题可能会报告给Telerik支持,或者如果您可以在jsFiddle或jsBin中重现它,您可以在此处发布。

答案 1 :(得分:0)

对于下拉列表,我建议使用自定义编辑器,如http://demos.kendoui.com/web/grid/editing-custom.html所述。与数据采集器和其他下拉列表一起为我工作。如果您将数据源中的DeliveryDate定义为类型date,则您将获得开箱即用的数据标签。保持可编辑的标志,剑道为您完成大部分工作。

列定义:

  { field: "Category", title: "Category", width: "160px", editor: categoryDropDownEditor, template: "#=Category.CategoryName#" },

自定义编辑器:

  function categoryDropDownEditor(container, options) {
                        $('<input required data-text-field="CategoryName" data-value-field="CategoryID" data-bind="value:' + options.field + '"/>')
                            .appendTo(container)
                            .kendoDropDownList({
                                autoBind: false,
                                dataSource: {
                                    type: "odata",
                                    transport: {
                                        read: "http://demos.kendoui.com/service/Northwind.svc/Categories"
                                    }
                                }
                            });
                    }

数据源:

 DeliveryDate : {
          //data type of the field {Number|String|Boolean|Date} default is String
          type: "Date",
        }