函数fnIsDataTable始终返回false
我正在使用数据表版本1.9.4。使用datatable的fnIsDataTable函数我需要检查数据表是否已经被初始化。但是使用fnIsDataTable函数总是返回false。以下是我的功能:函数fnIsDataTable始终返回false
function getData() {
if ($.fn.DataTable.fnIsDataTable("#example")) {
$("#example").dataTable();
} else {
$("#example").dataTable({
bLengthChange": false,
"bFilter": true,
"bInfo": false,
"bSort": false,
"iDisplayLength": 50
});
}
}
有人可以帮助我吗?
我找到了解决方案。我们需要通过使用javascript函数getElementById来获取该表格元素的引用,然后在fnIsDataTable函数中使用该引用变量来检查其初始化。如下图所示:
function getData() {
var ex = document.getElementById("example");
if ($.fn.DataTable.fnIsDataTable(ex)) {
$("#example").dataTable();
} else {
$("#example").dataTable({
"bLengthChange": false,
"bFilter": true,
"bInfo": false,
"bSort": false,
"iDisplayLength": 50
});
}
}
另外,因为V1.10,你可以简单地使用isDataTable
代替fnIsDataTable
。
function getData() {
if ($.fn.DataTable.isDataTable("#example")) {
$("#example").dataTable();
} else {
$("#example").dataTable({
"bLengthChange": false,
"bFilter": true,
"bInfo": false,
"bSort": false,
"iDisplayLength": 50
});
}
}
查看文档:https://datatables.net/reference/api/%24.fn.dataTable.isDataTable()
他正在使用v1.9.4,'isDataTable()'被添加到v1.10。 – Raisch 2017-02-01 14:17:11
@Raisch好点。适当地更新了我的措辞。 – AntonChanning 2017-02-06 11:41:45
完美。谢谢! – Cheeky 2016-07-16 20:13:36