0

我有這樣的NG-重複條件:angularjs清晰過濾器NG重複

<tr ng-repeat="(k, v) in loanapps | filter:{LoanStatus:SelectedStatus}:true track by $index"> 
    <td> 
     {{v.Id}} 
    </td> 
    <td> 
     {{v.Name}} 
    </td> 
</tr> 

篩選工作正常,當我有SelectedStatus值。現在我也想重置過濾器並顯示所有結果。

我有這個按鈕點擊功能:

$scope.ResetStatusFilter = function() { 
    $scope.SelectedStatus = null; 
} 

我也試過:

$scope.ResetStatusFilter = function() { 
    $scope.SelectedStatus = ''; 
} 

但是,這做的是清理掉所有的結果是什麼。

反正有沒有,我怎樣才能顯示所有的結果,並排除過濾器,一旦按鈕被點擊?

的選擇列表是這一個:

<select ng-model="SelectedStatus"> 
    <option value="Under Review">Under Review</option> 
    <option value="Waiting for Meeting">Waiting for Meeting</option> 
    <option value="Processing">Processing</option> 
</select> 

感謝,Laziale

+0

使用自定義過濾器清除過濾器 - https://docs.angularjs.org/guide/filter – bhantol

+0

THX @bhantol你能PLS舉個例子,我應該如何在我的情況下應用自定義過濾器,謝謝 – Laziale

+0

列表第一次加載時,'''selectedstatus'''的默認值是什麼,並且您是否嘗試將其設置回該值? – Vinny

回答

1

嘗試改變filter:{LoanStatus:SelectedStatus}:truefilter:SelectedStatus

+0

誰會知道哪個字段適用? Thx尋求幫助 – Laziale

+0

可能希望參考文檔,但我相信過濾器會默認搜索整個對象以獲取字符串值。雙重檢查@ https://docs.angularjs.org/api/ng/filter/filter – Vinny

+0

這實際上是工作,謝謝 – Laziale

0

試試這種短路技術。

<tr ng-repeat="(k, v) in loanapps | 
      filter: (LoanStatus.SelectedStatus && 
    {LoanStatus:SelectedStatus}:true) track by $index"> 
+0

過濾器現在不工作,thx – Laziale

+0

現在應該工作 - 我有':'而不是'.' – bhantol

0

,而不是使用filter:{LoanStatus:SelectedStatus}:truefilter:SelectedStatus

您可以通過使用

$scope.SelectedStatus ={} 

它將清除過濾器