【问题标题】:How to select row in telerik grid after grid rebind method?网格重新绑定方法后如何在 Telerik 网格中选择行?
【发布时间】:2013-02-14 14:41:27
【问题描述】:

在我的网格中,选择了一行,然后我使用 grid.rebind() 方法重新绑定该网格。现在我如何选择之前重新绑定之前选择的同一行。

我已尝试使用以下代码,但无法选择该行。

var selectedRow = $("#abcgrid tbody tr.t-state-selected");
var abcgrid = $("#abcgrid").data("tGrid");
    abcgrid .rebind();

selectedRow.addClass("t-state-selected");

也试过了

var selectedRow = $("#abcgrid tbody tr.t-state-selected");
var selectedRowID = ($(selectedRow)[0]).cells[0].innerHTML;
var gridRows = $("#abcgrid .t-grid-content tbody > tr");
               if (gridRows != null) {
               gridRows.each(function (index, row) {
                  if (row.cells[0].innerHTML == selectedRowID ) {
                     $(row).addClass("t-state-selected");
                   }
               });
              }

两个代码都不起作用。请指导我选择该行。我错过了什么吗。 注意 - 它们不是 javascript 错误。

【问题讨论】:

    标签: telerik grid


    【解决方案1】:

    如果您的行顺序没有改变,您可以使用 do:

    var selectedRow = $("#abcgrid tbody tr.t-state-selected");
    console.log(selectedRow)
    var indexSelecedRow = selectedRow.index();
    console.log(indexSelecedRow )
    var abcgrid = $("#abcgrid").data("tGrid");
        abcgrid .rebind();
    
    var trs = $("#abcgrid tbody tr");
    console.log(trs)
    selectedRow = $("#abcgrid tbody tr").eq(indexSelecedRow);
    console.log(selectedRow )
    

    如果网格内容发生变化,那么每一行都应该有一个带有唯一 id 参数的隐藏列。然后可以保存这个id参数,重新绑定后使用。

    【讨论】:

    • Simon,感谢您的建议,但不幸的是它不起作用。未选择网格行
    • 那么您需要付出更多努力。我更新了我的答案,您能否将控制台输出附加到您的帖子中。请在 Firefox/Firebug 中使用。
    • 请发布您的网格的 HTML ......所以都在<div id="abcgrid" class="t-grid">...</div>
    【解决方案2】:

    非常感谢您的努力。我通过在 .OnRowDataBound() 客户端事件上编写代码解决了这个问题。我将 selectedID 变量保持为隐藏状态,然后在 .OnRowDataBound() 方法中,我在下面写了几行

    var selectedRowID = $("#hdnSelectedID").val();
        if selectedRowID != null && selectedRowID != '') {
            if (e.dataItem.ID == selectedRowID ) {
                e.row.className = "t-state-selected";
            }
        }
    

    我认为问题出在 rebind() 方法上,无论如何感谢您的帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-06-01
      • 2011-09-07
      • 2013-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多