我在服务器端模式下设置了DataTables 1.10.15。
使用jquery的keyup
和change
方法完成各种输入时,会触发生成表数据的ajax脚本。
我想实现一个按钮,将表重置为原始状态(第一次加载页面,在任何搜索/排序之前)状态。
所以我实现了这个意思,当单击一个按钮(#resetSearch
)时,它会清除所有搜索输入字段,然后重新绘制表格:
$('#resetSearch').click(function(){
$(':input','#primarySearch')
.not(':button, :submit, :reset, :hidden')
.val('')
.removeAttr('checked')
.removeAttr('selected');
myTable.draw();
});
变量myTable
是对DataTables的引用:
var myTable = $('#myTable').DataTable({ });
问题在于虽然它清除了我的所有搜索输入,但它不会重置表中的sort
和order
输入。因此,如果我在第2列上进行降序排序,然后按下#resetSearch
,它将按第2列的降序给出所有结果 - 因为没有代码可以将其重置为升序列0。
我不明白如何定位sort
或order
输入,以便我可以覆盖它们并使其正常工作。
请有人帮忙吗?
答案 0 :(得分:0)
数据表已经有类/选择器的处理程序' .filter-cancel'为你的问题。
将按钮或链接与课程'过滤 - 取消'在你的桌子内(例如)并点击它进行测试。它会默认重新加载您的数据并重置所有过滤器。