AngularJS动态访问JSON索引值
我的范围数据:AngularJS动态访问JSON索引值,angularjs,multidimensional-array,angularjs-scope,angularjs-ng-repeat,Angularjs,Multidimensional Array,Angularjs Scope,Angularjs Ng Repeat,我的范围数据: $scope.data = "category": [{ "name": "cat1", "behaviour": "normal", "selected": 0, "values": [{ "label": "define", "count": 6 }] }, { "name": "cat2", "behaviour": "normal", "selected": 0, "values": [{ "label": "type", "count
$scope.data =
"category": [{
"name": "cat1",
"behaviour": "normal",
"selected": 0,
"values": [{
"label": "define",
"count": 6
}]
}, {
"name": "cat2",
"behaviour": "normal",
"selected": 0,
"values": [{
"label": "type",
"count": 6
}]
}, {
"name": "Company",
"behaviour": "multi-select",
"selected": 0,
"values": [{
"label": "VW",
"count": 4
}, {
"label": "Renault",
"count": 1
}, {
"label": "Fiat",
"count": 1
}]
}, {
"name": "Make",
"behaviour": "multi-select",
"selected": 0,
"values": [{
"label": "Gold",
"count": 3
}]
}, {
"name": "Color",
"behaviour": "normal",
"selected": 0,
"values": [{
"label": "White",
"count": 3
}, {
"label": "Blue",
"count": 2
}, {
"label": "Green",
"count": 1
}]
}]
如何在不使用索引的情况下访问“名称”:“值”?因为数据可能会增长和变化,我不想在任何地方分配索引值?我仍然希望进行如下筛选:
| {name: 'Make'}: true)
在我的标记显示中,json不正确,我更正了它(下次您可以使用此站点查看json是否有效) 若要访问名称的值,请执行以下操作 在控制器中:
$scope.data = [
{
"name": "cat1",
"behaviour": "normal",
"selected": 0,
"values": [
{
"label": "define",
"count": 6
}
]
},
{
"name": "cat2",
"behaviour": "normal",
"selected": 0,
"values": [
{
"label": "type",
"count": 6
}
]
},
{
"name": "Company",
"behaviour": "multi-select",
"selected": 0,
"values": [
{
"label": "VW",
"count": 4
},
{
"label": "Renault",
"count": 1
},
{
"label": "Fiat",
"count": 1
}
]
},
{
"name": "Make",
"behaviour": "multi-select",
"selected": 0,
"values": [
{
"label": "Gold",
"count": 3
}
]
},
{
"name": "Color",
"behaviour": "normal",
"selected": 0,
"values": [
{
"label": "White",
"count": 3
},
{
"label": "Blue",
"count": 2
},
{
"label": "Green",
"count": 1
}
]
}
];
在HTML中
<div ng-repeat="d in data"> {{d.name}} </div>
{{d.name}
如果要显示名为“Company”的对象的值,可以在“我的工作”中这样做:
只需添加一个新的ng重复:
<div ng-repeat="d in data"> {{d.name}}
<div ng-if="d.name == 'Company'" ng-repeat="da in d.values">{{da.label}}</div>
</div>
{{d.name}
{{da.label}
首先,您的数据格式不是正确的JSON格式,请通过在线验证程序运行它
要访问该元素,您只需通过:
<li ng-repeat="item in data">
{{ item.name }} {{ item.behaviour }} etc...
</li>
{{item.name}{{item.behavior}}等。。。
清除$scope.data内的类别。。。让它成为一个类似于典型JSON值的数组。@carton-ha,必须同时发布。。足够简单的问题我无法处理结构:)我需要能够指定名称=公司例如,如果这是一家公司,你会做一些不同的事情吗?这是你的意思吗?所以不,我会这样做,例如:并显示一个count So值,例如CODEPEN添加到我的答案可能重复的