Angular ng-repeat filter on subarray

后端 未结 2 891
闹比i
闹比i 2021-01-24 07:51

Using Angular, I\'m trying to filter using ng-repeat on FactorName given the following schema.
Filtering using <... ng-model=\"query.Factors.FactorName\" ...> doesn\'t wo

相关标签:
2条回答
  • 2021-01-24 08:08

    I figured it out to make the filter on any of the elements of the array Factors, but could not figure how to select just one field of the array. Maybe it just works for you:

    <input ng-model="filtervalue.Factors"/><br/><br/>
    Filtered:
    <p><span ng-repeat="d in data | filter:filtervalue:false">{{d}}</span></p>
    

    And the initialization on JS:

    $scope.filtervalue = {};
    

    Sample on jsfiddle:

    http://jsfiddle.net/jordiburgos/QFUu6/
    
    0 讨论(0)
  • 2021-01-24 08:20

    There is also another place where you can iterate on a array, working along side ng-repeat, in the double bindings with a custom filter.

    Working Demo

    HTML

    <ul ng-repeat="x in factorData">
      <li>
        {{ x.Factors | factorFilter }}
      </li>
    </ul>
    

    JS

    app.filter('factorFilter', function() {
        return function(items) {
            var results = [];
            if (items) {
                for (var i = 0; i < items.length; i++) {
                    results = items[i]['FactorName'];
                }
                return results;
            } else {
              return 'Doh!';
            }
       }
    })    
    
    0 讨论(0)
提交回复
热议问题