jquery - 如何使用外部按钮更新剑道网格上的多行

标签 jquery asp.net kendo-ui telerik

我有一个剑道网格,其列为:

enter image description here

我为“关闭”按钮编写了一个函数,当用户通过检查选择行并单击“关闭”按钮时,这将自动将 IsClosed Column 更新为“True”

这是我的代码:

$(function () {
    $('#btnClose').click(function () {
        var grid = $('#grOrders').data("kendoGrid");
        $.each($('#grOrders :checkbox:checked').closest('tr'), function () {                
            var data = grid.dataItem($(this));
            data.set("IsClosed", true);
        });
    });

});

当我测试时,它只更新检查的第一行,不知道为什么?请帮助我。

最佳答案

问题是,一旦您调用 set("IsClosed", true) KendoUI 就会重绘网格,因此下一个 grid.dataItem 将不会返回您期望的内容.

相反,请尝试执行第一个 each 来获取需要修改的项目列表,然后执行第二个 each 来实际修改它们。像这样的东西:

$('#btnClose').click(function () {
    var grid = $('#grid').data("kendoGrid");
    var rows = $('#grid :checkbox:checked');
    var items = [];
    $.each(rows, function () {
        var item = grid.dataItem($(this).closest("tr"));
        items.push(item);
    });
    $.each(items, function(idx, elem) {
        elem.set("IsClosed", true);
    });
});

关于jquery - 如何使用外部按钮更新剑道网格上的多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26727676/

相关文章:

javascript - Mobiscroll Datepicker Kendo UI 移动版

jquery - 如果窗口大小调整为宽度 800 像素,则更改背景图像

javascript - 如何将 jQuery 信息添加到 html 表单?

asp.net - 将 dotnet 核心部署到 Heroku

kendo-ui - Kendo UI DropDownList - 更改确认

javascript - Kendo UI 网格 - 分组表标题

jquery - Div 元素上的 jquery blur() 事件问题

javascript - 停用点击事件的最佳方法是什么

asp.net - 是否可以使用 Fiddler 的请求生成器发出 JSON 请求?

C# 在站点主控中添加控件不会在 asp 中引用 :loginView