我想过滤ng-repeat
具有多个类别复选框的项目列表。
我在 AngularJS 中通过多个复选框阅读了此过滤,并观看了 Egghead 的视频,但我在一个简单的for
循环中有一个错误,我不明白:
ReferenceError: i is not defined
这是一个代码:http ://plnkr.co/edit/p538ALfs00JTFQ6mKT9j
谢谢您的帮助
我想过滤ng-repeat
具有多个类别复选框的项目列表。
我在 AngularJS 中通过多个复选框阅读了此过滤,并观看了 Egghead 的视频,但我在一个简单的for
循环中有一个错误,我不明白:
ReferenceError: i is not defined
这是一个代码:http ://plnkr.co/edit/p538ALfs00JTFQ6mKT9j
谢谢您的帮助
如果要使用严格模式 ( 'use strict';
),则需要声明变量。您checkboxFilter
使用了许多从未定义(i
包括)的变量。您可以通过将 script.js:22-23 更改为:
var i,j,k,filter_cat,filter_value,filter_name,matchingItems = [];
在那之后你还有其他三个问题......
filter_cat
:的属性items[i].filter_cat
,而您想要的是查找值为 的属性名称filter_cat
,所以这就是您想要的:items[i].[filter_cat]
。这是一个让您走上正轨的部分编辑。您仍然需要修改您的 json 或比较小写(我部分修改了您的 json):http ://plnkr.co/edit/d7p4QthXJg4ao34ATWla?p=preview