javascript - 如何获取分组 Kendo 网格中选定行的索引和数据

标签 javascript jquery html kendo-ui kendo-grid

我正在尝试像这样访问行索引:

var grid = $("#grid").data("kendoGrid");
alert(grid.select().index());

我在这个 jsfiddle 中添加了我的代码关联。这段代码在我的系统中有效,我不知道为什么在 jsfiddle 中没有调用 deleteRecord() 方法,但这不是实际问题。

这里虽然点击最后一行的取消按钮警告消息会说索引为8,但实际索引是4。每个按钮只给我错误的索引。

最佳答案

您在 fiddle 中使用的是非常旧版本的 Kendo UI,因此选择也不起作用。它没有找到 deleteRecord 的原因是您将 fiddle 设置为包装在 window.onLoad 中,这发生在 document.ready 之后。

关于行索引:你需要确定相对于网格数据行的索引(如果你只是得到所选行的索引,它也会计算分组行;如果你有),所以你可以像这样使用 grid.items():

var grid = $("#grid").data("kendoGrid");        
var dataRows = grid.items();
var rowIndex = dataRows.index(grid.select());

查看演示 here .

如果您真正感兴趣的是访问所选行的数据,您应该使用类似这样的东西(请注意,所有这些都假设您的网格设置为单元格或单行选择):

var tr = grid.select().closest("tr");
var dataItem = grid.dataItem(tr);

关于javascript - 如何获取分组 Kendo 网格中选定行的索引和数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20815195/

相关文章:

javascript - jQuery .animate() 问题,<p> 标签正在移动

javascript - 具有字符串值的 PHP 变量与来自 javascript 的具有 html id 值的 PHP 变量不相等?

javascript - dir=auto 属性在应用于 div 标签时不起作用

javascript - 如何在选择单选按钮时显示元素并在未使用 javascript 选择时隐藏它?

javascript - 如何使用弹出窗口 javascript 中的变量调用父窗口 jquery 函数?

php - 客户端与服务器持续通信 PHP

javascript - 为什么 .remove() 不删除元素?

javascript - 谷歌图表 : hi is not a function

javascript - 如何从嵌套对象调用函数?

javascript - Cordova iOS 不响应 touchinput