【问题标题】:Kendo UI Grid, get column Index or Name from DataItemKendo UI Grid,从 DataItem 获取列索引或名称
【发布时间】:2021-08-29 16:09:32
【问题描述】:

我有一个编辑器功能,我在其中接收一个 dataItem 参数。我想知道是否有办法从此数据项中检索列名或索引。

https://docs.telerik.com/kendo-ui/knowledge-base/radio-buttons-custom-editor

【问题讨论】:

  • 使用调试器或 console.log(dataItem) 查看它有哪些属性。它将有一个指示行索引的 id。如果您需要更详细的答案,请扩展您的问题以包含针对您的具体案例的代码。

标签: kendo-ui kendo-grid


【解决方案1】:

在此示例中,模板用于所有行和列 CategoryId。因此,该方法将与每个数据项(实际上是一个数据项/行)一起调用。

您已经知道该列(它是 CategoryID 或索引 1 - 从 0 开始)。要获取行索引,您可以通过 uid 找到它:

 var row = $("#grid").data("kendoGrid")
              .tbody
              .find("tr[data-uid='" + dataItem.uid + "']");
                
  console.log(row.index());

我认为您对该模板的工作方式有误解,并且您正在寻找诸如捕获单元格/行/列的更改事件之类的内容。

引用:

 change: function (e) {
          var $grid = e.sender; // grid ref
          var $cell = $grid.select(); // selected td
          var $row = $cell.closest('tr'); //selected tr
          var row_uid = $row.attr('data-uid'); //uid of selected row
          var cell_index = $cell.index(); //cell index 0 based
          var row_index = $row.index(); //row index 0 based
          var row_data = $grid.dataItem($row).toJSON(); //selected row data

          console.log(row_data);
      },

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-08-18
    • 2015-12-29
    • 2022-01-06
    • 1970-01-01
    • 1970-01-01
    • 2012-12-05
    • 1970-01-01
    相关资源
    最近更新 更多