datatable.fnDraw()不是函数

RaK*_*Ker 4 javascript jquery datatables

我有一个数据表正在填充和显示我希望.我可以使用日期列来应用日期范围过滤器.我的HTML页面上有两个控件,我已经给了id并添加了datepicker jquery.我查看了这里给出的代码示例https://datatables.net/plug-ins/filtering/row-based/range_dates但是当我运行代码a并更改控件上的日期时,我看到的错误oTable.draw()不是一个功能.

我正在使用数据表1.10.11并且我使用以下代码设置了我的表

var statementTable = $('#statementTable').DataTable({....});
Run Code Online (Sandbox Code Playgroud)

使用此行触发on change事件

$('#startdatepicker').change(function () { statementTable.fnDraw(); });
Run Code Online (Sandbox Code Playgroud)

当这一行执行时,我在控制台中看到错误:

statementTable.fnDraw()不是函数.

有人可以提供任何指示吗?谢谢理查德

Gyr*_*com 8

Method fnDraw()是DataTables 1.9的旧API方法.

对于初始化表时较新的DataTable 1.10+,请DataTable()使用较新的draw()API方法.

$('#startdatepicker').change(function () { statementTable.draw(); });
Run Code Online (Sandbox Code Playgroud)

或者,您可以使用dataTable()旧的API方法初始化您的表,例如fnDraw()仍然有效.


RaK*_*Ker 0

这是由于 statementsTable 的声明位于错误的位置导致的,因此无法在更广泛的上下文中使用。请参阅原帖下方的评论。