剑道ui网格与下拉列表

时间:2013-09-06 13:31:32

标签: javascript kendo-ui

我有一个kendo ui网格,单元格中有下拉列表。问题是当某人在下拉列表中选择新值时,我将丢失所选行。有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

可能发生的事情是DropDownList中项目的选择正在改变绑定数据项的值。这会导致DataSource触发“更改”事件,因此表知道它需要更新。编写Kendo Grid的方式,当它从DataSource获取更改事件时,它会重新创建表格单元格。我很确定现有的表格单元格会从DOM中删除,并在其位置添加一个新的集合。发生这种情况时,选择将被删除。


保留所选行的一种方法是向网格的“更改”事件添加函数处理程序,并保存所选数据项的uid。然后在“dataBound”事件中,您可以重新选择该行。 例如:

var selectedUid;

$("#grid").kendoGrid({
    ...

    change: function () {
        selectedUid = this.select().data("uid");
    }

    dataBound: function () {
        if(selectedUid) {
            this.select($(this.element).find('tr[data-uid="' + selectedUid + '"]'));
        }
    }
});