datatable.fnDraw()不是函数

时间:2016-04-19 14:16:39

标签: 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({....});

正在使用此行触发更改事件

$('#startdatepicker').change(function () { statementTable.fnDraw(); });

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

  

statementTable.fnDraw()不是函数。

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

2 个答案:

答案 0 :(得分:6)

方法fnDraw()是DataTables 1.9的旧API方法。

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

$('#startdatepicker').change(function () { statementTable.draw(); });

或者,您可以使用dataTable()初始化表格,然后fnDraw()等较旧的API方法仍可使用。

答案 1 :(得分:0)

这是由声明表的声明位于错误的地方引起的,因此不适用于更广泛的上下文。请参阅原始帖子下方的评论。