我正在尝试按一列或多列过滤表格。
问题是表中有些行没有所有字段,因为它们可以为空。
然后,在进行任何搜索之前,只显示包含所有数据字段的行,“ng-repeat”不显示此行。
我的HTML代码:
<input ng-show="combo.num == 0" type="text" class="form-control" ng-model="searchUS.$"/>
<input ng-show="combo.num == 1" type="text" class="form-control" ng-model="searchUS.subject"/>
<input ng-show="combo.num == 2" type="text" class="form-control" ng-model="searchUS.status"/>
<input ng-show="combo.num == 3" type="text" class="form-control" ng-model="searchUS.tags"/>
<tr ng-repeat="row in rowCollectionUserStories
| orderBy:sortType:sortReverse |filter:searchUS"
ng-class="row.selectedCell ? 'cellSelectedClass' : ''">
我还尝试为“searchUS”更改ng-model =“searchUS。$”,但我将输入作为占位符[object] [object]。
在这个例子中它完美地运作:link。
我更改数组删除数字字段,它可以工作。
在我的情况下,字段可能是空的是一个数组,这是问题所在。
有什么想法吗?
非常感谢。
答案 0 :(得分:0)
我通过执行以下操作设法解决了问题:
<input ng-show="combo.num == 0" type="text" class="form-control" ng-model="searchUS.$"/>
<input ng-show="combo.num == 1" type="text" class="form-control" ng-model="searchUS.subject"/>
<input ng-show="combo.num == 2" type="text" class="form-control" ng-model="searchUS.status"/>
<input ng-show="combo.num == 3" type="text" class="form-control" ng-model="searchTags"/>
<tr ng-repeat="row in rowCollectionUserStories | orderBy:sortType:sortReverse |
filter: (combo.num == 3 ? {tags: searchTags} : searchUS)"
ng-hide="row.sprint !== undefined"
ng-class="row.selectedCell ? 'cellSelectedClass' : ''">