Kendo ui 剑道网格更改行类不工作

Kendo ui 剑道网格更改行类不工作,kendo-ui,kendo-grid,Kendo Ui,Kendo Grid,我有一个剑道网格,有复选框供选择。 单击复选框时,我将行的类别更改为“k-state-selected”,并将行id保存在中 var checkedIds = []; 然后,我有一个上下文菜单,可以在其中选择要应用于行的更改 在这种情况下,我想更改所有行的值。这很有效 然后,我有一段代码,用于恢复以前选择的行 private setCheckRows(checkedIds) { $.each(checkedIds, (index, value) => {

我有一个剑道网格,有复选框供选择。 单击复选框时,我将行的类别更改为“k-state-selected”,并将行id保存在中

var checkedIds = [];
然后,我有一个上下文菜单,可以在其中选择要应用于行的更改

在这种情况下,我想更改所有行的值。这很有效

然后,我有一段代码,用于恢复以前选择的行

private setCheckRows(checkedIds) {
            $.each(checkedIds, (index, value) => {
                $("#grid  tbody").find("tr").each(
                    function () {
                        if ($(this).closest("tr").attr("Id") === value) {
                            $(this).closest("tr").addClass("k-state-selected")
                                .attr("style", "background-color: rgb(51,121,181)")
                                .find(".checkbox")
                                .attr("checked", "checked");
                        }
                    });
            });
        }
它是有效的,但又不能

如果我选中一个复选框,那么这段代码将不起任何作用

if ($(this).closest("tr").attr("Id").replace("task-row-", "") === value) {
                            $(this).closest("tr").addClass("k-state-selected")
                                .attr("style", "background-color: rgb(51,121,181)")
                                .find(".checkbox")
                                .attr("checked", "checked");

                    }
如果我选中两个或多个复选框,它将对除第一行以外的所有行起作用

因此,除第一行外,所有行都将恢复为选中状态,并具有蓝色背景

这确实是一种非常奇怪的行为

有什么想法吗? 提前解决问题。

我设法解决了它

我改变了这个

$.ajax({
                type: "POST",
                url: "/Cockpit/SetWorkflowStep",
                dataType: "json",
                data: JSON.stringify(newTaskStatus),
                contentType: "application/json"
            }).done(() => {
                $("#grid").data("kendoGrid").dataSource.read();
                this.setCheckRows(checkedIds); 
            });
进入这个

$.ajax({
                type: "POST",
                url: "/Cockpit/SetWorkflowStep",
                dataType: "json",
                data: JSON.stringify(newTaskStatus),
                contentType: "application/json"
            }).done(() => {
                $("#grid").data("kendoGrid")
                          .dataSource.read()
                          .done(() => { this.setCheckRows(checkedIds); });
            });

现在它可以正常工作了。

您能在/中复制您的问题吗?