angularjs filter (not working)

前端 未结 7 1346
灰色年华
灰色年华 2020-12-25 14:56

The following HTML, Javascript and JSON render correctly, but the filter does not work at all. What are we doing wrong?



        
7条回答
  •  灰色年华
    2020-12-25 15:37

    Very helpful to know ... here's a more generic version of alfrescian's solution, to filter a list of objects by a sub-key.

    app.filter('objFilter', function() {
      return function(items, filter) {
          if (!filter){
              return items;
          }  
          var result = {};
            angular.forEach( filter, function(filterVal, filterKey) {
              angular.forEach(items, function(item, key) {
                  var fieldVal = item[filterKey];
                  if (fieldVal && fieldVal.toLowerCase().indexOf(filterVal.toLowerCase()) > -1){
                      result[key] = item;
                  }
              });
            });
            return result;
        };
    });
    

    You can then have multiple filter boxes, like this

    
    
        
    

    And your ng-repeat would look like this

    
    

提交回复
热议问题