jquery - 覆盖数据表选项

标签 jquery datatables

我在网站上随处使用数据表,每个表都有自己的属性

示例: 索引.php

  $(document).ready(function() {
    $('#fileTable').dataTable({
      "aaSorting": [],
      "columnDefs": [{"orderable": false, "targets": 5}],
    });
  });

文件.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 警告:表 id=fileTable - 无法重新初始化 DataTable。有关此错误的更多信息,请参阅http://datatables.net/tn/3

我如何正确地做到这一点(不破坏)

谢谢

最佳答案

您可以做的是将语言设置放在一个单独的对象中,然后为每个实例$.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
  }]
}));

关于jquery - 覆盖数据表选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45835938/

相关文章:

jquery - 将鼠标滚轮与 jQuery 结合使用

javascript - 在第一列 DataTables 中禁用行选择

javascript - 如何在不影响性能的情况下将大量数据加载到数据表

javascript - 从数据表中永久删除/删除行时遇到问题

php - 检查用户名是否存在,然后我要更新

javascript - 我的 ASP.NET 网站在 Chrome 的任务栏上显示纸质图标

jquery - KendoUI 网格选择行选择上的复选框,反之亦然

javascript - CSS:如何在其正下方制作带有子导航菜单的导航菜单?

javascript - Jquery Datatables 停止 RowReorder

jquery - 在 jQuery DataTables 中选择列