选项

DataTables 的 大量选项 可用于自定义其向最终用户展示界面和可用功能的方式。这是通过其在初始化时设置的配置选项完成的。

DataTables 扩展 还各自提供可在 DataTables 配置对象中设置的选项。

设置选项

通过将所需定义的选项作为对象传递给 DataTables 构造函数,可配置 DataTables。例如

$('#example').DataTable( {
    paging: false
} );

这使用 paging 选项禁用表格的分页。

假设您希望启用表格中的滚动 - 您将使用 scrollY 选项

$('#example').DataTable( {
    scrollY: 400
} );

除此之外,您可以将多个选项组合成一个对象。在此情况下,我们启用滚动并禁用分页

$('#example').DataTable( {
    paging: false,
    scrollY: 400
} );

传入的对象只是一个标准的 Javascript 对象,并且可以这样对待。添加任意数量的选项!

有关 DataTables 可用的全部配置选项,请参阅本网站的 选项参考部分。

非 jQuery 选项

如果您通过 DataTables 1.11 中提供的 new DataTable() 选项初始化 DataTables,则可以使用构造函数的第二个参数传递配置选项

new DataTable( '#example', {
    paging: false,
    scrollY: 400
} );

HTML 5 数据属性

v1.10.5 起,DataTables 还可以使用从 HTML5 data-* 属性读取的初始化选项。这提供了一种直接在 HTML 中设置选项的机制,而不是使用 Javascript(如上所示)。例如,考虑以下表格

<table data-order='[[ 1, "asc" ]]' data-page-length='25'>
    <thead>
        <tr>
            <th>Name</th>
            <th>Position</th>
            <th>Office</th>
            <th>Age</th>
            <th>Start date</th>
            <th data-class-name="priority">Salary</th>
        </tr>
    </thead>
</table>

当 DataTables 在此表格上初始化时,它会将 pageLength 设置为 25,自动按第二列排序 (order),并在表格的最后一列中设置类名 (columns.className)。

data-* 属性用作初始化选项时,有两个重要事项需要考虑

  • jQuery 会自动将短划线字符串转换为 DataTables 使用的驼峰式符号(例如,对 pageLength 使用 data-page-length)。
  • 如果在属性内部使用字符串,必须使用双引号(因此整个属性使用单引号)。这是 jQuery 由于处理 JSON 数据而提出的另一项要求。

常用选项

一些您可能觉得特别有用的选项如下

设置默认值

在使用多个 DataTables 的项目中,通常将初始默认值设置为常见值非常有用(例如,您可能想将 dom 选项设置为一个常见值,以便所有 table 获取相同的布局)。可以使用 $.fn.dataTable.defaults 对象来完成此操作。此对象将获取与 DataTables 初始化对象相同的所有参数,但是在这种场景下,您为 DataTables 的所有未来初始化设置默认值。

在此示例中,我们禁用 DataTables 的默认的搜索和排序功能,但是当表初始化后,它会带着启用的命令初始化(覆盖默认值)。

// Disable search and ordering by default
$.extend( $.fn.dataTable.defaults, {
    searching: false,
    ordering:  false
} );

// For this specific table we are going to enable ordering
// (searching is still disabled)
$('#example').DataTable( {
    ordering: true
} );

扩展

许多 DataTables 扩展 也可以通过 DataTables 配置对象进行配置,初始化扩展并根据需要配置扩展。可用的属性取决于所使用的扩展,并且必须加载扩展 Javascript 才能使这些选项生效。

例如,考虑 Select 扩展,它让最终用户能够动态地选择表格中的行、列和单元格。它展示了 select 选项,可以将其设置为 以启用选择

$('#myTable').DataTable( {
    select: true
} );

select 选项作为对象也可以提供精细控制选择选项,并且当然可以与其他 DataTables 选项相结合。

选项参考 会提供来自 DataTables 和扩展的一个可搜索的所有选项列表。