Kri*_*hna 13 jquery jquery-datatables datatables-1.10
我使用https://datatables.net/reference/api/rows.add%28%29链接工作,但数据显示表格为[object,object]
.如何将对象显示为字符串.我用过JSON.stringify(obj)
它也没用.
HTML
<table id="exampleTable">
<thead>
<tr>
<th>Year</th>
<th>Month</th>
<th>Savings</th>
</tr>
</thead>
<tbody>
<tr>
<td>2012</td>
<td>January</td>
<td>$100</td>
</tr>
<tr>
<td>2012</td>
<td>February</td>
<td>$80</td>
</tr>
</table>
Run Code Online (Sandbox Code Playgroud)
JS
$('#addRows').click();
var table3 = $('#exampleTable').DataTable();
$('#addRows').on( 'click', function () {
table3.row.add(
[ { "Year": "Tiger Nixon", "Month": "System Architect", "Savings": "$3,120" },
{"Year": "Tiger Nixon", "Month": "System Architect", "Savings": "$3,120" }]
).draw();
});
Run Code Online (Sandbox Code Playgroud)
小智 16
我在这个FIDDLE中创建了两个样本.
如果要在行中使用对象,则应在数据表init中添加列:
JS
var table3 = $('#exampleTable').DataTable({
data:[{ "Year": "2012", "Month": "January", "Savings": "$100" },
{ "Year": "2012", "Month": "February", "Savings": "$80" }],
columns:[{data: 'Year'},
{data: "Month"},
{data: "Savings"}]
});
Run Code Online (Sandbox Code Playgroud)
但是如果你不想这样做,可以在行中使用下一个语法add:
JS
table4.rows.add(
[[ "Tiger Nixon", "System Architect","$3,120" ],
["Tiger Nixon", "System Architect", "$3,120" ]]
).draw();
Run Code Online (Sandbox Code Playgroud)
看起来小提琴它更有用.
我也遇到了这个问题 - 我发现文档不太清楚。当我传递自己动态创建的对象数组时,他们在https://datatables.net/reference/api/rows.add()上的示例不起作用。
为了让它工作,你必须在实例化数据表时指定列的名称。
无论如何,以下是一个有效的解决方案。
var DataTable = $('#tableName').DataTable({
iDisplayLength: 15, // number of rows to display
columns: [
{ data: 'id' },
{ data: 'name' },
{ data: 'car' },
]
});
// assume this is a dynamically created array of objects
var persons = [
{
id: 1,
name: 'John',
car: 'Mercedes',
},
{
id: 2,
name: 'Dave',
car: 'BMW',
},
{
id: 3,
name: 'Ken',
car: 'Jeep',
},
];
DataTable.rows.add(persons).draw();
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
26012 次 |
最近记录: |