我在Angular JS中有一些对象。
为了显示这个数组,我使用ng-repeat
从输入字段中按值过滤。
问题是,当我在字段ng-repeat
中键入文本时,会进行过滤并更改数组的索引。
过滤前的默认数组:
0 => obj(o)
1 => obj(b)
2 => obj(c)
如果我输入“b”,我会得到输出列表:
0 => obj(b)
但是对于索引0
,如果element为1。
因此,在过滤之前,索引0
已obj(o)
。
如何在过滤后保存1 => obj(b)
的索引?
答案 0 :(得分:1)
$scope.defaultArray = [
0 => obj(o)
1 => obj(b)
2 => obj(c)
];
$scope.filteredArray = $scope.defaultArray;
在ng-repeat中使用filteredArray变量 然后,对于filteredArray中剩余的每个元素,您都可以获得其索引 通过这样做:$ scope.defaultArray.indexOf(obj(b))如果我搜索“b”