2016-10-19 7 views
0

Ich habe Json Anfrage wie folgt. Ich muss nur Werte von Schlüssel mit intrsted in der Tabelle filtern. Ich bin neu zu den Filtern und zur Handhabung des Schlüssels im eckigen. Ich habe meine JSON-Anfrage und Antwort beigefügt, brauche Hilfe.Winkelfilter auf Objektschlüssel in Antwort

JSON:

var customer = 
[ 
    [ 
    { 
     "businessuserid": 44, 
     "businessusername": "rk business New", 
     "businessusermobile": "00", 
     "businessusercountrycode": "91", 
     "admin": true, 
     "mobilevalidated": false, 
     "emailvalidated": false, 
     "email": "[email protected]", 
     "upin": "000044" 
    } 
    ], 
    [ 
    { 
     "approved": true, 
     "businessuserid": 43, 
     "businessusername": "Cakey Bakes", 
     "businessusermobile": "8050663763", 
     "businessusercountrycode": "91", 
     "admin": true, 
     "mobilevalidated": true, 
     "emailvalidated": false, 
     "email": "[email protected]", 
     "upin": "000043" 
    } 
    ], 
    [ 
    { 
     "intrsted": true, 
     "attended": false, 
     "businessuserid": 44, 
     "businessusername": "rk business New", 
     "businessusermobile": "00", 
     "businessusercountrycode": "91", 
     "admin": true, 
     "mobilevalidated": false, 
     "emailvalidated": false, 
     "email": "[email protected]", 
     "upin": "000044" 
    } 
    ], 
    [ 
    { 
     "intrsted": true, 
     "attended": false, 
     "businessuserid": 52, 
     "businessusername": "Cars workshop", 
     "businessusermobile": "9535000636", 
     "businessusercountrycode": "91", 
     "admin": true, 
     "mobilevalidated": true, 
     "emailvalidated": false, 
     "email": "[email protected]", 
     "upin": "000052" 
    } 
    ] 

Html:

<table ng-repeat="item in customers | filter: { intrsted: true }"> 
    <td>{{item.businessusername}}</td> 
    <tr> 
</table> 

Antwort

1

Es ist nichts falsch mit Ihrer Filternutzung. Problem ist bei Ihrer ng-Wiederholung Verwendung. Wenn Sie Ihr json-Objekt doppelt überprüfen, sehen Sie, dass jedes Element ein anderes Array ist. Daher müssen Sie das innere Objekt als Array verwenden. Fix Ihre HTML-ähnliche

<table ng-repeat="item in customers | filter: { intrsted: true }"> 
    <td>{{item[0].businessusername}}</td> 
</table> 

Sie sehen Ihre Artikel ist nur eine andere Array es so wie Element verwenden [0] und Sie werden das Ergebnis, das Sie wollen ...

UPDATE

zur Verwendung zweiter HTML innere Array-Liste zeigt ng-Repeat innerhalb der ersten ng-repeat ... I

<table ng-repeat="item in customers | filter: { intrsted: true }"> 
    <td ng-repeat="customer in item">{{customer.businessusername}}</td> 
</table> 
+0

jetzt habe ein Array. Wenn es mehr als eins ist, wie kann ich Element [1] dynamisch füllen? –

+0

Checkout Update Abschnitt ... –

+0

Vielen Dank, es war hilfreich –