我正在尝试将option
字段的值设置为另一个 JSON 对象中的 JSON 对象,例如。catalogue
里面attribute.catalogue
.问题是它被保存为看起来像 JSON 对象的String
。
我认为这与选项value
字段的限制有关。我可以以某种方式调整我的代码,以便将值存储为 JSON 对象而不是字符串吗?
这是代码:
<div class="col-sm-3">
<select ng-model="attribute.catalogue" ng-change="showScope()">
<option data-ng-repeat="catalogue in catalogueObjects"
value="{{catalogue}}">{{catalogue.name}}</option>
</select>
</div>
在一般的html中,attribute
只能存储string
值。在角度世界中ng-options
指令确实提供了在选择选项时使用分配对象的能力。
<select ng-model="attribute.catalogue" ng-change="showScope()"
data-ng-options="catalogue as catalogue.name for catalogue in catalogueObjects">
</select>
参考
- https://docs.angularjs.org/api/ng/directive/ngOptions