2016-06-15 14 views
0

enter image description hereStrict-Modus-Filter in AngularJS funktioniert nicht

Die folgende Codezeile funktioniert nicht. Es gibt die ganze Liste. Aber warum gibt es nicht das gewünschte Ergebnis?

$scope.search = "Ernst Handel"; 
$scope.disableFilter = false; 
$scope.records = [{ 
     "Name": "Alfreds Futterkiste", 
     "Country": "Germany" 
    }, { 
     "Name": "Berglunds snabbköp", 
     "Country": "Sweden" 
    }, { 
     "Name": "Centro comercial Moctezuma", 
     "Country": "Mexico" 
    }, { 
     "Name": "Ernst Handel", 
     "Country": "Austria" 
    }, { 
     "Name": "Ernst Handelll", 
     "Country": "Austriaaa" 
    }] 

<tr ng-repeat="x in records | filter:(!disableFilter || '') && {Name:search}.true "> 
    <td>{{x.Name}}</td> 
    <td>{{x.Country}}</td> 
</tr>` 

Es gibt alle Artikel im Tabellenformat wie unten.

Alfreds Futterkiste Germany 
Berglunds snabbköp Sweden 
Centro comercial Moctezuma Mexico 

Aber mein gewünschtes Ergebnis sollte wieder nur

Ernst Handel Austria 

Dank einmal sein. Aber ich möchte auf einigem Zustand Filter verwenden, und dass zu strenges Spiel

<tr ng-repeat="x in records | filter:(!disableFilter || '') && {Name:search}.true "> 

Je nach disableFilter sollen meine Filter angewandt werden. Hier

+0

Ah. Und hast du irgendeine Frage? – C14L

+0

Was ist die Frage genau? –

+0

ist nicht klar, was das gewünschte Ergebnis wäre hier. – Claies

Antwort

0

ist der Arbeitsfilter Sie wollen: PLUNK

<table class ="table"> 
    <tr style="font-weight:bold; background-color:grey;"> 
    <td>Name</td> 
    <td>Country</td> 
    </tr> 
    <tr ng-repeat="x in records | filter:search"> 
     <td>{{x.name}}</td> 
     <td>{{x.country}}</td> 
    </tr>` 
</table> 

$scope.search = "Alfreds Futterkiste"; 

$scope.records = [ 
    { 
     name: "Alfreds Futterkiste", 
     country: "Germany" 
    }, { 
     name: "Berglunds snabbköp", 
     country: "Sweden" 
    } 
] 

Wenn Sie besorgt sind über Groß- und Kleinschreibung, lassen Sie es uns wissen.

+0

Nein .. das nicht, was ich will ... Ich möchte strenge Filter basierend auf meiner Bedingung –

+0

@PinakiPrasadMohapatra: Willst du nur die Ergebnisse, die strikt übereinstimmen $ scope.search zu zeigen? Wenn ja, sehe meine Antwort. Wenn nicht, werde ich später zurückkommen und darüber nachdenken. – VSO

+0

@PinakiPrasadMohapatra P.S. Du kannst einen Filter schreiben, um das zu tun, was ich mit ng-if gemacht habe, aber nach meinem besten Wissen, müsste es ein benutzerdefinierter Filter sein. – VSO