我想访问在jQuery DataTable中动态创建的元素。 请考虑以下代码:
$( document ).ready(function() {
var tableref = $('#myTable').DataTable({ "pageLength": 10 });
for (var k=0; k<15; k++) {
tableref.row.add(['<div id="myDiv' + k + '">'+k+'</div>']).draw();
console.log(document.getElementById('myDiv'+k));
}
});
由于页面大小设置为10,我只能访问前10个div。您可以看到接下来的5个元素的控制台输出为空。
为什么会这样?我该如何解决这个问题?
答案 0 :(得分:0)
如果要访问datatables对象的数据,则不应遍历行,而应遍历数据属性。
供参考,请查看此页面: https://msdn.microsoft.com/en-us/library/ms174335.aspx
答案 1 :(得分:0)
如果要获取表格的所有元素,可以使用getCount()
,返回已生成的tr元素列表。
阅读更多信息http://datatables.net/forums/discussion/7454/fngetnodes-only-returning-visible-nodes
在你的例子......
rows().nodes()