2014-08-27 22 views
1

我希望ng-grid不要根據特定的列進行搜索,但我希望這些列仍可排序。在ng-grid中禁用對列的過濾

有沒有辦法做到這一點?

+0

服務器雙面或客戶端? – mainguy 2014-08-27 14:40:53

+0

@mainguy客戶端 – abyx 2014-08-28 03:57:48

回答

2

對不起,我遲到了,全天開會: - \我的回答示例的修改版本從here得到了運行。

這是一個基於here的官方服務器雙面分頁示例。

我在$scope.getPagedDataAsync改變了代碼以包括此過濾功能:

if (searchText) { 
    var ft = searchText.toLowerCase(); 
    data = $scope.longData.filter(function(item) { 
     var si=JSON.stringify(item.allowance).toLowerCase()+JSON.stringify(item.paid).toLowerCase(); 
     if (si.indexOf(ft)!=-1){ 
     return item; 
     }; 
    }); 

這將產生從列數據字段allowancepaid一個字符串,ingores的name柱,並搜索所生成的字符串的任何事件的搜索文本。根據自己的喜好添加更多colums。

如果searchtext在字符串中的任何位置找到,則該項目返回到ng-grid。

這是不區分大小寫的,因此toLowerCase()部分。

找到工作Plunker here

+0

謝謝你的回答。這看起來似乎解決了這個問題,但代價是自己實施全部過濾,並且無論何時添加/刪除/更改列都必須同步此代碼。我將這個問題打開一段時間 – abyx 2014-08-31 04:44:16

+0

也許給過濾器插件嘗試:http://plnkr.co/edit/LRdkiRzFjoe8LFK7Sxt7?p=preview我在這個例子中禁用了年齡過濾器。 – mainguy 2014-09-01 11:34:54