How to use filter with in ng-repeat using Angular js?

纵然是瞬间 提交于 2019-12-12 04:38:49

问题


All I want to filter some values with in ng-repeat, I have tried but haven't got a solution...

  • My Plunker.

  • I am looking for three kinds of solution,

(i) In my plunker first, i am looking to filter ng-module="request_role" value of parent in the list. so I had tried like | filter: request_role.[parent'].

(ii) In my plunker second list, i am looking to filter ng-module="request_role" value of Change Agent. so I had tried like | filter: request_role.['Change Agentent'].

(i) In my plunker third list, i am looking to filter ng-module="request_role" value of parent,Change Agent. so I had tried like | filter: request_role.['parent,Change Agent'].

  • I think I have done a mistake in filter, so please check and update my plunker as well to know exact solution, thanks...

My Html:-

<p style="background: black;color:white">1.Filter request_role  value of `parent` data's in below list</p>
        <div  ng-repeat="question in users | filter: request_role.['parent']">
            <small>
              <table border="0">
                <tbody>
                  <th>{{question.displayName}}</th>
                <th style="background: yellow;">,{{question.roles[0]}}</th>
                <th style="background: light;">,{{question.request_role[0]}}</th>

                </tbody>
                      </table>


              </small>
        </div>

        <p style="background: black;color:white">2. Filter request_role  value of `Change Agent ` data's in below list</p>
        <div  ng-repeat="question in users | filter: request_role.['Change Agent']">
            <small>
              <table border="0">
                <tbody>
                  <th>{{question.displayName}}</th>
                <th style="background: yellow;">,{{question.roles[0]}}</th>
                <th style="background: light;">,{{question.request_role[0]}}</th>

                </tbody>
                      </table>


              </small>
        </div>

         <p style="background: black;color:white">3.Filter request_role  Both value of ["parent","Change Agent"] data's in below list</p>
        <div  ng-repeat="question in users | filter: request_role.['parent,Change Agent']">
            <small>
              <table border="0">
                <tbody>
                  <th>{{question.displayName}}</th>
                <th style="background: yellow;">,{{question.roles[0]}}</th>
                <th style="background: light;">,{{question.request_role[0]}}</th>

                </tbody>
                      </table>


              </small>
        </div>

My filter:-

  1. | filter: request_role.['parent']

    2.  | filter: request_role.['Change Agent']

3. | filter: request_role.['parent,Change Agent']
  • My Plunker.

回答1:


You can solve this using a custom filter or directly by applying a filter on ng-repeat as shown below

  1. <div ng-repeat="question in users | filter: {'request_role':'parent'}">
  2. <div ng-repeat="question in users | filter: {'request_role':'Change Agent'}">
  3. <div ng-repeat="question in users | filter: {'request_role':'Change Agent','request_role':'parent'}">

Working Plunker: http://plnkr.co/edit/NY3h8BCQn4gAbJsdyiJw?p=preview



来源:https://stackoverflow.com/questions/46034098/how-to-use-filter-with-in-ng-repeat-using-angular-js

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!