我目前从包含JSON的资源列出了ng-options的一组选项。
[
{
id:23,
name:"Other"
},
{
id:24,
name:"Crew"
},
{
id:25,
name:"Announcer"
},
{
id:26,
name:"Producer"
},
{
id:27,
name:"Cameraman"
},
{
id:28,
name:"Monitor"
}
]
这已全部添加到我的范围$ scope.broadcaster = response.data。然后我通过一个简单的ng-options循环遍历我的选项中的所有内容。
<select ng-model="selectedrole" ng-options="roles as roles.name for roles in broadcaster" ng-init="selectedrole=broadcaster[0]">
</select>
页面加载后一切顺利。我可以从我的名单列表中选择,并按预期在第一个选项上启动ng-init。但是我有几个问题似乎无法解决。
1)在我的文档中,我设置了 {{selectedrole}} ,我希望看到我的模型内容在我当前的选择中反映出来。相反,我根本看不到任何输出。我无法判断模型是否正确更新,因此我不确定是否可以在我的formdata中使用它。
2)此选择是在点击时生成的,因此用户可以为多个人选择一个角色。但是,由于模型是相同的,因此将复制任何选择。我需要找到一种输出模型来检查数据的方法,但是要使该模型动态化,以便我可以从所有不同的选择中获得结果列表。
编辑:
现在这真的很疯狂。我用一个傻瓜嘲笑它,它至少显示模型就好了。是否存在一些我应该担心的冲突会阻止模型更新?我直接复制粘贴我的数据和它在plunker工作,但不是我的项目。
http://plnkr.co/edit/GbdOmdjj1M3OuZKO5cSq?p=preview
EDIT2:
更多信息。正如我之前所说,当用户点击创建带有用户信息的ng-repeat和角色的新选择选项的函数时,就会创建选择。如果我将{{selectedrole}}放在ng-repeat中,我实际上会在用户选择它时返回所有数据。似乎由于点击会创建新数据的推送,因此它不会在每个项目之外工作。现在的问题是每个实例都有自己的模型,所以我需要弄清楚如何从每个ng-repeat收集所有这些数据并将其发布到表单中。在我解决这个问题时,我会尝试更新。