据我了解,只有回调“ dataFiltered”,用于整个表。它由所有过滤器无关地触发。
是否可以为特定的单个标头过滤器获得回调? 这样,只要某个标头过滤器变为活动状态,就可以立即调用函数? 我想这是这样的:
app.yaml
可能有解决方法吗? 非常感谢! (我特别感谢非jQuery解决方案)
也感谢这款真正出色的工具制表器。
答案 0 :(得分:1)
感谢您的客气话,很高兴听到Tabulator受到赞赏。
应用任何过滤器时被调用的原因是因为可以一次应用多个过滤器,而Complex Filtering可以应用复杂和/或过滤器集,因此很难将其隔离到特定的列在所有情况下。
dataFiltered 回调的确传递了所有当前活动过滤器的列表,因此您可以查看受影响的列是否在其中:
var table = new Tabulator("#example-table", {
dataFiltering:function(filters){
//filters - array of filters currently applied
},
});
如果需要查看列是否已被过滤,则可以在回调之外存储该对象的先前值的副本,然后在下一次调用时比较旧值和新值。
另一种选择是在标题过滤器中使用自定义编辑器,然后您可以手动确定何时调用成功函数以启动过滤器,然后从那里引用外部函数