我在网站上的每个地方都使用数据表,每个表都有自己的属性
示例: index.php
$(document).ready(function() {
$('#fileTable').dataTable({
"aaSorting": [],
"columnDefs": [{"orderable": false, "targets": 5}],
});
});
archives.php
$('#fileTable').dataTable({
"columnDefs": [
{"orderable": false, "targets": 3}
]
});
我想更改所有表格的文本而不做更改 jquery.dataTables.min.js
所以我把它放在页脚中:
$(document).ready(function() {
$('#fileTable').dataTable({
language: {
search: "",
searchPlaceholder: "Search...",
sLengthMenu:"_MENU_",
sInfo:"_TOTAL_ elements"
}
});
});
但我有这个错误: DataTables警告:table id = fileTable - 无法重新初始化DataTable。有关此错误的详细信息,请参阅http://datatables.net/tn/3
我如何正确地做到这一点(没有破坏)
谢谢
答案 0 :(得分:2)
您可以做的是将语言设置放在一个单独的对象中,然后为每个实例$.extend()
添加自己的自定义设置,如下所示:
var langSettings = {
language: {
search: "",
searchPlaceholder: "Search...",
sLengthMenu: "_MENU_",
sInfo: "_TOTAL_ elements"
}
}
// for index.php:
$('#fileTable').dataTable($.extend(langSettings, {
"aaSorting": [],
"columnDefs": [{
"orderable": false,
"targets": 5
}]
}));
// for archives.php:
$('#fileTable').dataTable($.extend(langSettings, {
"columnDefs": [{
"orderable": false,
"targets": 3
}]
}));
答案 1 :(得分:0)
由于错误说明您无法reinitialise DataTables
。但只要您在每个页面中初始化表格,只需添加首选文字。