Kendo UI MVC Grid弹出编辑器关闭事件删除网格状态

时间:2014-06-30 20:58:36

标签: jquery asp.net-mvc kendo-asp.net-mvc kendo-ui-mvc

我有一个 Keno UI MVC网格,我为复选框字段创建了一个ClientTemplate。 在复选框上单击事件我将类添加到选中的 tr 。并为该行详细信息打开弹出编辑器。

当我关闭弹出窗口时,复选框将取消选中,所选行将变为未选中状态。我该如何防止这种情况并保持状态。

复选框的OnClick事件

function chkClick(e) {
    isChecked = $(e).is(':checked');
    _addressId = $(e).val();


    var $tr = $(e).closest("tr");

    if (isChecked) {
        $tr.addClass("k-state-selected");
        $tr.find(".k-grid-edit").click();
    }
    else {
        $tr.removeClass("k-state-selected");
        $tr.find(".k-grid-cancel").click();
    }
}

网格行的OnEdit事件

function onEdit(e) {

    e.container.data("kendoWindow").bind("close", function () {
        if (_addressId > 0) {
            var grid = $('#practiceLocationsGrid').data().kendoGrid;

            var dataItem = grid.dataSource.get(_addressId);

            dataItem.set('selected', isChecked);

        }
    })

}

点击复选框之前 enter image description here

点击复选框后 enter image description here

关闭编辑弹出窗口后(正如我在关闭窗口后看到的那样,选中的行未被选中,复选框将被取消选中) enter image description here

1 个答案:

答案 0 :(得分:-1)

创建更改事件。 selectable true并在onchange事件中编写打开的窗口函数。

  template: "<input name='fullyPaid' class='ob-paid' type='checkbox' data-bind='checked: fullyPaid' #= fullyPaid ? checked='checked' : '' #/>"
 }
  ]
});


var grid = $("#grid").data("kendoGrid");
grid.tbody.on("change", ".ob-paid", function (e) {

// open the window. 
});

点击这里

http://jsbin.com/ebadaj/12/edit