在 DataTables 中查找和更新单元格

Posted

技术标签:

【中文标题】在 DataTables 中查找和更新单元格【英文标题】:Find and Update Cell in DataTables 【发布时间】:2015-05-28 08:58:39 【问题描述】:

我需要能够运行 Jquery 函数来更新某个单元格中的值。

表格中的每一行在一列中都有一个唯一的 ID 号

<table id="example">
  <thead>
    <tr>
      <th>
        ID
      </th>
      <th>
        Count
      </th>
    </tr>
  </thead>

  <tfoot>
    <tr>
      <th>
        ID
      </th>
      <th>
        Count
      </th>
    </tr>
  </tfoot>

  <tbody>
    <tr>
      <td>
        <%= a.id %>
      </td>
      <td>
        <%= a.count %>
      </td>
    </tr>
  </tbody>
</table>

我需要使用 Jquery 或其他东西来更新右侧表行“无需重新加载页面”中的 ida.id 的计数匹配的 a.count

这个表会有很多行。

------------编辑-------------

我如何使用它来将 Class 添加到 Count Cell 中

var addId = $('#<%= @table %>').dataTable().fnAddData(<%= @post %>);

var theNode = $('#<%= @table %>').dataTable().fnSettings().aoData[addId[0]].nTr;
theNode.setAttribute('id','<%=  @id %>');

解决了我这样做了:

var addId = $('#<%= @table %>').dataTable().fnAddData(<%= @post %>);
var theNode = $('#<%= @table %>').dataTable().fnSettings().aoData[addId[0]];
theNode.nTr.setAttribute('id','<%=  @id %>');
theNode.anCells[1].setAttribute('class', 'count');

【问题讨论】:

【参考方案1】:

您可以尝试将 id 添加到行中并将类添加到单元格中,例如

<tr id="row_#a.id">
   <td class="id"><%= a.id...
   <td class="count"><%= a.count...

然后你可以将它用于选择器,比如

$("#row_" + id + ' td.count').text(...

希望有帮助

【讨论】:

我可以用 DataTables jquery 做到这一点 是的,您需要在实际构建表格行的任何地方执行此操作 - 无论是在 Rails 视图中还是在 javascript 中。 如何将类添加到计数单元?我正在使用它在表格已经绘制后添加行...(请参阅编辑)

以上是关于在 DataTables 中查找和更新单元格的主要内容,如果未能解决你的问题,请参考以下文章

DataTables PDF 导出单元格填充

如何将过滤器和订单数据设置到 DataTables 单元格

排序(字母顺序)以忽略空单元格:dataTables

Datatables js 复杂表头 合并单元格

DataTables + PDFmake = 颜色 PDF 表格单元格?

DataTables:如何将类设置为表格行单元格(而不是表格标题单元格!)