如何解决Angulajs数组中选择选项的嵌套循环
嗨,我正在使用angularjs构建表单,我从php这样获得了一个数组返回值,我想从该数组构建出这样的表单。
<b>Company</b>
<select ng-model="attributs[]">
<option>Chinese</option>
<option>Japanese</option>
</select>
<b>Color</b>
<select ng-model="attributs[]">
<option>Black</option>
<option>Red</option>
</select>
[
{
id: 1,name: "Company",attribute_values:[
{
id: 1,name: "Chinese"
},{
id: 2,name: "Japanese"
}
]
},{
id: 2,name: "Color",attribute_values:[
{
id: 4,name: "Black"
},{
id: 5,name: "Red"
}
]
}
]
我想从选择选项中选择所有选择的值,但尝试不了。预先谢谢你。
<div ng-repeat="attrib in attributes.data">
<label class="col-sm-5 col-form-label"><% attrib.name %></label>
<div class="col-sm-5">
<select ng-model="attrib.attributeSelected" ng-options="atb.value as atb.name for atb in attrib.attribute_values">
</select>
</div>
</div>
解决方法
您没有提到选择后想要的输出格式。
我做了一个变通办法,它将在每个属性内创建一个属性selectedOption
,以将所选选项的值保存在相应的属性中。
<div ng-repeat="attrib in data">
<label class="col-sm-5 col-form-label">{{attrib.name}}</label>
<div class="col-sm-5">
<select ng-model="attrib.selectedOption">
<option default selected disabled value="">Select</option>
<option ng-repeat="x in attrib.attribute_values" value={{x.id}}>{{x.name}}</option>
</select>
</div>
</div>
将像下面这样插入属性selectedOption
,
[{
"id": 1,"name": "Company","attribute_values": [{
"id": 1,"name": "Chinese"
},{
"id": 2,"name": "Japanese"
}],"selectedOption": "1"
},{
"id": 2,"name": "Color","attribute_values": [{
"id": 4,"name": "Black"
},{
"id": 5,"name": "Red"
}],"selectedOption": "5"
}]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。