此问题针对Datatables
的{{1}}插件。
我需要遍历所有表行(甚至是分页)并获取每个JQuery
元素的id
。
HTML表格如下:
tr
所以如果最后2个字符不等于<table>
<thead>
<tr>
<th>Header content 1</th>
<th>Header content 2</th>
</tr>
</thead>
<tbody>
<tr id="etc_1_en">
<td>Etc 1</td>
<td>Etc 2</td>
</tr>
<tr id="etc_1_ru">
<td>Etc 3</td>
<td>Etc 4</td>
</tr>
<tr id="etc_1_fr">
<td>Etc 5</td>
<td>Etc 6</td>
</tr>
<tr id="etc_2_en">
<td>Foo 1</td>
<td>Foo 2</td>
</tr>
<tr id="etc_2_ru">
<td>Foo 3</td>
<td>Foo 4</td>
</tr>
<tr id="etc_2_fr">
<td>Foo 5</td>
<td>Foo 6</td>
</tr>
</tbody>
</table>
,我需要遍历每一行并隐藏行(这样检查一切正常,我使用en
)。
我可以遍历以下所有行:
substr
但我找不到tbl = $('#myTable').DataTable();
var data = tbl.rows().data();
data.each(function (value, index) {
console.log('Data in index: ' + index + ' is: ' + value);
});
id
tr
的方法(使用此示例数据etc_1_en
,etc_1_ru
等等)。有人能帮助我吗?
我尝试传递函数id
作为参数,但它返回 - undefined
。
答案 0 :(得分:2)
您可以使用rows()
循环浏览rows().every()
。这样,您就可以访问row
对象,该对象将为您提供data
和id
。
tbl = $('#myTable').DataTable();
tbl.rows().every(function () {
var data = this.data();
var id = this.id();
console.log('Data in id: ' + id + ' index: ' + index + ' is: ' + data);
});