如何从子窗口更改kendoGrid中单元格的值?

时间:2014-08-13 06:24:49

标签: javascript jquery kendo-grid

我想从子窗口更改kendoGrid中单元格的值这是我的父窗口代码(考虑到我有kendoGrid):

 function onDataBound(e) {
        var grid = $("#Grid").data("kendoGrid");

        $("#d_roz").on("keypress", function (e) {
            if (e.keyCode == 13) {
                {

                    grid.addRow();

                }

            }
        });


        $(grid.tbody).on("keydown", "td", function (ev) {
            if (ev.keyCode == 13) {
               var row = $(this).closest("tr");
                var rowIdx = $("tr", grid.tbody).index(row);
                var colIdx = $("td", row).index(this);

                //var data = grid.dataItem(grid.tbody.find('tr:eq(' + colIdx + ')'));
                // console.log(data.cod1);

                var cod1 = e.sender._data[rowIdx].cod1;
                var sh_cod1 = e.sender._data[rowIdx].sh_cod1;

                if (colIdx == 0 && is_open_find == false) {




                    cellSender = e.sender._data[rowIdx]; //this is a global variable I use 


                    childWindow = window.open(testu, "_blank", null, false);
}});});

在我的子窗口中,我有以下代码:

 id = ui.item.id; //this is the value I wanted from child window

                window.opener.isPosted = true;


               window.opener.cellSender.cod1 = id; // and I will change the value of cell here


                self.close();

问题是单元格值会发生变化,但kendo不会显示更改,直到我重新关注我不想这样做的网格。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

您需要获取Grid的选定dataItem,然后更新该dataItem对象中的值而不是单元格。