如何使用 AngularJs 过滤 JSON 数据
How to filter JSON-Data with AngularJs?
我有一个包含JSON对象的数组(_users)。
{
"User":
{
"userid":"19571",
"status":"7",
"active":"1",
"lastlogin":"1339759025307",
"Stats":
[
{
"active":"1",
"catid":"10918",
"typeid":"71",
"Credits":
[
{
"content":"917,65",
"active":"1",
"type":"C7"
},
{
"content":"125,65",
"active":"1",
"type":"B2"
}
]
}
]
}
}
1-如何仅过滤"活动":"1"而不是"0"的用户
我试过这样的事情:
<div ng-repeat="user in _users | filter:active | orderBy:user.userid">
{{user.userid}}
</div>
但对我来说无法正常工作。
谢谢!
由于您的对象模型有点复杂,我建议使用自定义过滤函数:
$scope.isActive = function(user) {
return user.User.Stats[0].active === "1";
};
然后在您的 HTML 中:
<div ng-repeat="user in _users | filter:isActive">
{{user.User.userid}}
</div>
这是工作jsFiddle:http://jsfiddle.net/pkozlowski_opensource/4kzzy/3/
如果您需要更多信息,请务必查看 Angular 关于过滤器的文档:http://docs.angularjs.org/api/ng.filter:filter
更进一步@pkozlowski.opensource,允许对项目/用户进行实时过滤:
http://jsfiddle.net/hbyNN/
<div ng-controller="MyCtrl">
<label>userid substring filter:</label>
<input ng-model="zzzzz">
<div ng-repeat="user in _users | filter:isInteresting">
<pre>{{user | json}}</pre>
</div>
</div>
和:
$scope.isInteresting = function (user) {
if ($scope.zzzzz == undefined) {
return true;
}
return user.userid.indexOf($scope.zzzzz) !== -1;
};
相关文章:
- 如何将JSON数据导入我的ejs模板
- 如何将json数据显示为html
- Json数据包含日期和时间格式
- 用我的json数据填充JQuery DataTable
- AngularJS加载JSON数据,然后从中解析/加载HTML
- 使用jquery读取Json数据
- 如何将本地json数据加载到Extjs数据模型中
- 如何使用jquery ajax和jsonp在您自己的域上读取json数据
- React-将jSON数据传递给子组件的子组件
- 尝试从控制器加载带有json数据的Simile时间线
- Jquery:对返回JSON数据的php脚本的Ajax调用
- 如何通过数据分组将json数据转换为嵌套的json数据格式
- 如何在ReactJs中显示Json数据
- 使用javascript进行JSON数据检索
- tu如何将id放在填充了json数据的html表td上
- 将JSON数据从服务器加载到knockout.jsobservable中
- 使用JavaScript处理JSON数据
- 如何将json数据传递到.js文件
- 如何在带有nunjucks和gullow数据的JSON数据中使用带有HTML的内容
- 如何使用var名称调用JSON数据