如何在每一行中包含下拉列表,并使用客户端模板

时间:2016-11-06 13:01:19

标签: kendo-ui

如何在kendo网格中使用客户端模板显示每一行的下拉列表? 我用谷歌搜索但我找不到任何正确的东西。我有一个带有字符串和列表的模型,我想使用ajax绑定将它绑定到一个剑道网格。

1 个答案:

答案 0 :(得分:0)

您可以通过为网格中的列指定编辑器来实现此目的。并在视图模型中定义编辑器属性。

示例:你的网格应该是

<div id="gridId" data-role="grid"
                         data-scrollable="true"
                         data-row-template="your_RowTemplate"
                         data-editable="true" data-bind="source: GridSource" data-pageable="false"
                         data-columns="[       
                                        { 'title': 'Head' , 'field': 'yourField','editor':viewModel.yourEditor},
                                      ]">
                    </div>

现在您可以在视图模型中定义编辑器,如下所示

var viewModel = new kendo.observable({ 
GridSource:new kendo.data.dataSource({data:[],schema:{model:yourmodel}}) ,
DropdownSouce:[],//setyoursource 
yourEditor: function (container, options) {
        $('<input data-bind="value: ' + options.field + '" />')
        .appendTo(container)
        .kendoDropDownList({
            dataSource: viewModel.DropdownSouce,
            dataTextField: 'Text',
            dataValueField: 'Id'
        });
    }
});