【问题标题】:Setting id attribute to datatables 1.10.11 <tr>将 id 属性设置为数据表 1.10.11 <tr>
【发布时间】:2016-06-09 06:30:20
【问题描述】:

我正在使用数据表 1.10.11。

根据documentation,我可以使用以下语法设置rowId:

$('#myTable').DataTable( { rowId: 'staffId' } );

我没有使用 Ajax 创建数据表。 我在左侧有两个文本框和“添加”按钮,在右侧有一个数据表。当我单击“添加”时,会在数据表中添加一个新行。我希望这是有道理的。

我需要为每一行使用唯一的 id 属性。我试过这样做,但根本没有成功。

根据文档,此功能从 DataTables 1.10.8 开始可用

有人解决了这个问题吗?任何帮助将不胜感激。

谢谢。

【问题讨论】:

  • 你试过...?从 JSON / AJAX 源分配一个唯一属性,应该就是它。如果您在所有行中都有一个唯一的_id,那么rowId: '_id' ...
  • 我没有使用 Ajax 创建数据表。我在左侧有两个文本框和“添加”按钮,在右侧有一个数据表。当我单击“添加”时,会在数据表中添加一个新行。我希望这是有道理的。
  • 我正在编辑问题以将我的场景也添加到问题中。

标签: javascript jquery datatables datatables-1.10


【解决方案1】:

要将 ID 添加到 tr 元素,您可以使用 rowId 并指定包含您的 ID 的列。

$('#myTable').DataTable(
{
  columns: [
     {data:"staffId"},//Remember specified the column
     {data:"position"},
     {data:"office"},
     {data:"age"},
     {data:"date"},
     {data:"salary"}
  ],
  rowId: 'staffId' //Reference to column data
});

对于您的按钮添加,您应该创建对象并使用row.adddraw 添加到表中以显示在您的表中,例如:

$("#btnAdd").on("click",function(){

    var rowID = $("#rowId").val();//Get value of TextBox

    var new_object = { 
                       staffId: rowID, //New rowId
                       position: 'Developer', 
                       office: "Peru", 
                       age: 25, 
                       date: "2016/03/25", 
                       salary: "$ 58.200" 
                     };

  myTable.row.add(
      new_object
  ).draw();

});

结果: https://jsfiddle.net/cmedina/7kfmyw6x/65/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多