我正在使用带过滤器的ngTable
如何通过单击一个按钮清除过滤器值?
我认为$(".video_nav .item_container > .item").each(function() {
var button = $(this);
$(button).delay(2000).queue(function(){
alert("test");
button.trigger("click");
});
});
会重置过滤器,但显然情况并非如此。
谢谢
答案 0 :(得分:5)
像这样:$scope.tableParams.filter({});
答案 1 :(得分:4)
您可以清除向{}
实例的filter()
方法提供空对象(tableParams
)的过滤器。
请查看以下ng-click
指令:
如果您使用控制器作为语法:
在控制器中:
this.tableParams = new NgTableParams(tableSettings, tableParams);
在视图中:
<div ng-controller="demoCtrl as demo">
<button class="btn btn-primary pull-right"
ng-disabled="!demo.tableParams.hasFilter()"
ng-click="demo.tableParams.filter({})">
Clear filters
</button>
</div>
如果您使用带有$ scope语法的控制器:
在控制器中:
$scope.tableParams = new NgTableParams(tableSettings, tableParams);
在视图中:
<div ng-controller="demoCtrl">
<button class="btn btn-primary pull-right"
ng-disabled="!tableParams.hasFilter()"
ng-click="tableParams.filter({})">
Clear filters
</button>
</div>