如何在Kendo Grid中设置“UniqueName”,就像在Telerik RadGrid中一样?

4

我正在处理一个任务,将数据集从Telerik RadGrid迁移到Kendo Grid,并尝试设置排序。我已经成功为大多数列设置了排序,但是某些列具有'模糊'(相同命名)的data-field名称。RadGrid通过允许我建立“UniqueName”来解决此问题以指定哪个列。

Kendo Grid示例

    var assignmentColumns = 
    [
        { title: "Last Note Date", field: "NoteDateTime", template: '#= kendo.toString( toDate(NoteDateTime), "M/dd/yyyy h:mmtt" ) #' }
    ];



        var gridDataSource = new kendo.data.DataSource({
            transport: {
                read: {
                    url: '-',
                    type: 'POST',
                    contentType: 'application/json'
                },
                parameterMap: function (options) {
                    return JSON.stringify(options);
                }
            },
            schema: {
                data: 'data',
                total: 'totalItems'
            },
            serverPaging: true,
            pageSize: 10,
            serverFiltering: true,
            serverSorting: true
        });


        $grid.kendoGrid({

            dataSource: gridDataSource,
            pageable: true,
            scrollable: false,
            sortable: {
                allowUnsort: true
            },
            columns: assignmentColumns
        });

Telerik 工作示例

<telerik:RadGrid ID="radGrid_Commentary" AllowSorting="true">
    <MasterTableView>
        <Columns>  
            <telerik:GridBoundColumn DataField="NoteDateTime" UniqueName="cg.Date" HeaderText="Date" DataFormatString="{0:MM/dd/yyyy}" />
        </Columns>
    </MasterTableView>
</telerik:RadGrid>

有没有人有关于如何为kendogrid列指定“UniqueName”的想法?
1个回答

3

好的,在经过几个小时的思考和调试后,我想通了。模板处理屏幕显示内容,字段是当它将信息返回进行服务器端排序/过滤时使用的内容。我可能早该弄清楚这一点,但我希望这可以帮助其他经历类似脑抽的人。

以上修改如下:

var assignmentColumns = 
[
    { title: "Last Note Date", field: "cg.Date", template: '#= kendo.toString( toDate(NoteDateTime), "M/dd/yyyy h:mmtt" ) #' }
];

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接