Angular ui-select with或条件过滤器

时间:2015-11-09 12:20:21

标签: angularjs ui-select

我试图在ui select中使用或条件过滤器,我不知道如何处理它。我有一个类似的问题已经回答here。但是要求使用AND条件也适用于我。这是我的代码

HTML

public boolean isLargest(Node tmp, Node parent){
    if(tmp.value > parent.value){
        parent = parent.right;
        tmp.isLargest(tmp, parent);
    }
    else if(parent.value == tmp.value){
        System.out.println("test");
        return true;
    }       
    return false;

1 个答案:

答案 0 :(得分:0)

我正在使用属性过滤器来搜索我指定的任何参数。

    app.filter('propsFilter', function() {
       return function(items, props) {
           var out = [];

           if (angular.isArray(items)) {
               items.forEach(function(item) {
               var itemMatches = false;

               var keys = Object.keys(props);
               for (var i = 0; i < keys.length; i++) {
                   var prop = keys[i];
                   var text = props[prop].toLowerCase();
                   if (item[prop].toString().toLowerCase().indexOf(text) !== -1){
                       itemMatches = true;
                       break;
                   }
                }

                if (itemMatches) {
                  out.push(item);
                }
             });
           } else {
           // Let the output be the input untouched
               out = items;
           }

           return out;
         }
    });

 //To use add this to UI-Selet Where you are using filter
 <ui-select-choices repeat="city in List | propsFilter: {name: $select.search, secondFilter: $select.search, third: $select.search} | orderBy:'sortOrder'">