DataTable还是dataTable?

时间:2014-09-08 12:59:51

标签: datatables jquery-datatables

在DataTables网站上,为表格上的功能提供了许多示例。在某些人中他们使用:

table = $('#example').dataTable();

在其他人......

table = $('#example').DataTable();

我花了一段时间才注意到一些功能仅适用于前者,而其他功能仅适用于后者。这真的令人困惑,我无法找到关于两者之间差异的任何澄清。

目前我处于停滞状态,因为我需要两个仅适用于其中一个的功能:

table.fnAdjustColumnSizing

table.column(x).search(this.value).draw(); 

任何人都知道如何构建表,以便上述两种方法都能正常工作?

2 个答案:

答案 0 :(得分:2)

DataTable(大写第一个字母)表示来自新api的方法。最新版本的DataTables仍支持旧方法,但您应该尽可能使用新的api。

http://datatables.net/manual/api#Accessing-the-API

这可能是您的问题所需要的:

table.columns.adjust().draw();

https://datatables.net/reference/api/columns.adjust()

答案 1 :(得分:2)

查看升级事实 - > http://www.datatables.net/upgrade/1.10-faqs

  

Q值。尝试访问其中一个旧fn *时收到错误消息   样式API方法A.这与上述问题相反。   DataTables 1.9附带了许多功能(全部以fn开头)   到jQuery对象。旧的API仍然可用,但您必须使用   $()。dataTable()来访问jQuery对象。

只需使用

$(window).bind('resize', function () {
    $('#example').dataTable().fnAdjustColumnSizing();
});

参见演示 - > http://jsfiddle.net/uL5x4dg1/ ,如果您想使用旧的API函数以及新的DataTable() API。 dataTable()不重新初始化表,它只返回旧式jQuery对象。