我的ng-model值是 - “{”Id“:1,”描述“:”草稿“,”代码“:”草稿“}”和ng-options是 -
[ { "Id": 1, "Description": "Draft", "Code": "Draft" }, { "Id": 2, "Description": "UserSubmitted", "Code": "UserSubmitted" }, { "Id": 3, "Description": "PLMApproved", "Code": "PLMApproved" } ]
所以我的下拉列表没有填充(但值是绑定)。
我知道,如果ng-model值只是一个它将绑定的整数值,那么json对象怎么样? 请帮忙。
答案 0 :(得分:1)
AFAIK它不会绑定,因为你的模型是一个不同的对象,即指向不同的内存位置,并且它与数组中的任何对象都不匹配。
您可以使用ng-options中的as子句选择要进入ng-model的属性,并使用该值设置ng-model将设置所选选项。
e.g。
<select ng-options="item.Id as item.Description for item in default.items" ng-model="default.selectedItemId">
<option value="">Select</option>
</select>
否则您可以使用track by子句,当您想要将一个属性或对象放入ng-model时使用该子句但是您想要使用ng-model中的另一个属性设置所选选项,该属性将在track by子句即更新从代码到视图的绑定
e.g。
<select ng-options="item as item.Description for item in default.items track by item.Id" ng-model="default.selectedItem">
<option value="">Select</option>
</select>