jquery - 如何从 html 字符串向 jQuery DataTable 添加多行

标签 jquery datatables

我有一个 jQuery DataTable,我想向其中添加 html tr 行。这些行以 html 字符串的形式出现。我可以使用标准 jQuery 将它们添加到表中,但这意味着它们绕过 DataTable 对象,并在重新排序表时丢失。要使用 DataTable rows.add() 函数意味着我需要数组格式的行。

// table_rows actually comes from an ajax call. 
var table_rows = '<tr>...</tr><tr>...</tr><tr>...</tr>';

// This successfully adds the rows to the table... :-)
$('#datatable_id').append(table_rows);

// ...but those rows are lost when we redraw the DataTable. :-(
table = $("#datatable_id").DataTable();
table.order([0,'desc']).draw();

不幸的是,我无法轻松更改从服务器返回的内容,所以看来我需要一个客户端解决方案。

最佳答案

您不应直接操作表格并使用适当的 jQuery DataTables API 方法。

您可以使用rows.add()在提供 tr 节点时添加多行的 API 方法。您可以根据服务器响应构造 tr 节点。

例如:

var table_rows = '<tr><td>Tiger Nixon</td><td>System Architect</td><td>Edinburgh</td><td>61</td><td>2011/04/25</td><td>$320,800</td></tr>';

table.rows.add($(table_rows)).draw();

参见this jsFiddle用于代码和演示。

关于jquery - 如何从 html 字符串向 jQuery DataTable 添加多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38378245/

相关文章:

javascript - 从本地 json 文件填充数据表

jquery 仅在第一次悬停时显示 div

javascript - jQuery - ("a.class")加载和window.open?

jQuery 选择问题

javascript - 如何使用 ajax 休息调用正确填充数据表 JQuery

jquery - 使用 footer_callback 对数据表页脚中的 1+ 列求和?

javascript - 如何通过单击按钮停止我的 javascript 倒计时?

javascript - 找到div的静止高度

javascript - 大型 jquery 数据表使用 django 很慢

javascript - DataTables 行详细信息 row() undefined