【发布时间】:2017-01-12 15:01:31
【问题描述】:
我想过滤包含 4 个部分的手风琴中的数据。我的代码示例如下(我已经清除了 acordeon 代码和代码中的一些不同部分)
<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>
SubCategory、Lesson 和 SubLesson 数据来自另一个服务,它们保存在不同的数组中。
我想过滤此视图中的数据,包括所有数据。但是,如果我在 subLesson 部分(最低类别)中写一些单词,我必须查看父部分(html 元素)才能通过打开 acordeon 来获取 sublesson 数据。
我可以创建这样的过滤器吗?所有数据都来自 JSON 格式的 Web 服务。我必须考虑 ajax 延迟。
【问题讨论】:
标签: javascript angularjs filter