我遇到了一个关于DataTables的奇怪问题。不知道这是怎么回事。
我在页脚JavaScript代码这是全球范围内可用于整个网站的一般代码。
$('.datatable').dataTable({
"autoWidth": false,
"processing": true,
"serverSide": false,
"iDisplayLength": 25
... other codes here
});
字符串
在另一个页面中,我有下面的代码。(我想为这个页面初始化一个新的DataTable,因为它需要一些不同的设置)
HTML Code:-
<table id="product-catalog-datatable"
class="table table-hover table-responsive">
型
JS代码(特定于此页只):-
$('#product-catalog-datatable').DataTable({
....other codes here
型
问题是,即使我的产品索引页表没有类datatable
,全局DataTable函数也会初始化为我的product-catalog-datatable
表以及特定于页的DataTable()
函数。
我得到这个错误:
DataTables警告:table id=product-catalog-datatable -无法重新初始化DataTable。有关此错误的详细信息,请参阅http://datatables.net/tn/3
不知道这是怎么回事。有人有主意吗?
1条答案
按热度按时间ff29svar1#
您遇到的问题是由于同一个表元素上的DataTable初始化冲突造成的。当全局调用
$('.datatable').dataTable({...})
时,它将应用于所有具有类datatable的元素。但是,当您专门为#product-catalog-datatable
表调用$('#product-catalog-datatable').DataTable({...})
时,它会初始化同一表上的另一个DataTable。你可以试试这个:
删除全局DataTable初始化,并仅将其应用于需要它的特定表。修改全局代码以排除#product-catalog-datatable表。JS代码(全局):
字符串
JS代码(特定于#product-catalog-datatable页面):
型