Ich möchte Daten in einer Datei filtern, die aus 4 Teilen besteht. Mein Code der Probe ist unter (I acordeon Codes und einigen anderen Teilen in meinem Code gelöscht habe)Filtern von Arrays in mehreren Definitionslisten mit AngularJS
<input type="text" ng-model="searchText" placeholder="Filter">
<dl>
<dt ng-repeat-start="mainCategory in mainCategories | filter:searchText" >
{{mainCategory.Name}}
</dt>
<dd ng-repeat-end="">
<dl>
<dt ng-repeat-start="subCategory in subCategories[mainCategory.ID] | filter:searchText" >
{{subCategory.Name}}
</dt>
<dd ng-repeat-end="">
<dl>
<dt ng-repeat-start="lesson in subCategoryLessons[subCategory.ID] | filter:searchText" >
{{lesson.Name}}
</dt>
<dd ng-repeat-end="">
<dl>
<dt ng-repeat-start="subLesson in subLessons[lesson.ID] | filter:searchText">
{{subLesson.Header}}
</dt>
<dd ng-repeat-end="">
{{subLesson.Content}}
</dd>
</dl>
</dd>
</dl>
</dd>
</dl>
</dd>
</dl>
Unterkategorie, Lektion und SubLesson Daten von einem anderen Dienst kommen und sie in verschiedenen Arrays speichern.
Ich möchte Daten in dieser Ansicht filtern alle Daten enthalten. Aber wenn ich ein Wort in den SubLesson-Teil (die niedrigste Kategorie) schreibe, muss ich Elternteile (HTML-Elemente) sehen, um Sublesson-Daten über das Öffnen von Acordeon zu erreichen.
Kann ich einen Filter wie diesen erstellen? Alle Daten stammen von einem Web-Service mit JSON-Format. Ich muss Ajax-Latenz berücksichtigen.
ich vergaß zu sagen, Unterkategorie, Lektion und SubLesson Daten kommen aus ein anderer Dienst und sie sind verschiedene Array gespeichert. Ich werde das in meiner Frage hinzufügen. Das tut mir leid. – Sam
@Sam Ich habe das, aber Sie müssen sie zusammenführen und verschachteln - eine einfache Schleife wird den Trick machen. AFAIK, du hast keine andere Wahl – Bigood
Oh, ich sehe es jetzt. Ich werde es versuchen. Vielen Dank. – Sam