Angularjs 单击按钮清除多个过滤器
Angularjs clear multiple filters on button click
我在一个页面上的多个 select 框中有多个过滤器。我理想的功能是让用户可以选择通过单击按钮重置所有过滤器。我可以使用 select 框来单独实现此目的,以重置该特定过滤器,但不能同时重置多个过滤器。
这是代码-
<div class="col-md-2">
<select class="form-control" ng-model="typeFilter">
<option value="">All</option>
<option>Stock</option>
<option>Special Order</option>
<option>Part</option>
</select>
</div>
<div class="col-md-2">
<select class="form-control" ng-model="itemStatus">
<option value="">All</option>
<option>Active</option>
<option>Discontinued</option>
<option>Obsolete</option>
<option>Deleted</option>
</select>
</div>
<div class="col-md-2">
<button type="button" class="btn btn-large button-dropdown" data-translate="Rest_Filters" ng-click="vm.clearFilter()"> Rest Filters</button>
</div>
我试过的控制器 -
vm.clearFilter = function () {
vm.typeFilter = {};
vm.typeFilter = "";
vm.typeFilter = null;
vm.itemStatus = {};
vm.itemStatus = "";
vm.itemStatus = null;
}
我也尝试过内联语法,例如
ng-click="typeFilter = null"
ng-click="typeFilter = {}"
和其他一些,但似乎没有清除过滤器。
谢谢
你的指针变量有问题
$scope.clearFilter = function() {
$scope.typeFilter = null;
$scope.itemStatus = null;
}
我在一个页面上的多个 select 框中有多个过滤器。我理想的功能是让用户可以选择通过单击按钮重置所有过滤器。我可以使用 select 框来单独实现此目的,以重置该特定过滤器,但不能同时重置多个过滤器。
这是代码-
<div class="col-md-2">
<select class="form-control" ng-model="typeFilter">
<option value="">All</option>
<option>Stock</option>
<option>Special Order</option>
<option>Part</option>
</select>
</div>
<div class="col-md-2">
<select class="form-control" ng-model="itemStatus">
<option value="">All</option>
<option>Active</option>
<option>Discontinued</option>
<option>Obsolete</option>
<option>Deleted</option>
</select>
</div>
<div class="col-md-2">
<button type="button" class="btn btn-large button-dropdown" data-translate="Rest_Filters" ng-click="vm.clearFilter()"> Rest Filters</button>
</div>
我试过的控制器 -
vm.clearFilter = function () {
vm.typeFilter = {};
vm.typeFilter = "";
vm.typeFilter = null;
vm.itemStatus = {};
vm.itemStatus = "";
vm.itemStatus = null;
}
我也尝试过内联语法,例如
ng-click="typeFilter = null"
ng-click="typeFilter = {}"
和其他一些,但似乎没有清除过滤器。
谢谢
你的指针变量有问题
$scope.clearFilter = function() {
$scope.typeFilter = null;
$scope.itemStatus = null;
}