[英]Angular.js: set default selected from ID
我有一个angular.js单页应用程序,其初始数据是从其他端点收集的。
该应用程序获取代表已保存模型的ID列表,以及用于填充一些级联下拉菜单的选项树。
如何根据模型中的ID在树中设置默认路径?
一些说明性代码:
楷模:
DefaultOptions = [
{"Id" : 044},
{"Id" : 142},
{"Id" : 244}
];
OptionsTree = [
{"Text" : "Option1",
"subOptions" : [
{"Text" : "SubOption1", "Id" : 044},
{"Text" : "SubOption2", "Id" : 142}
]},
{"Text" : "Option2",
"subOptions" : [
{"Text" : "SubOptionA", "Id" : 3033},
{"Text" : "SubOptionB", "Id" : 244}
]}
];
HTML:
<div ng-repeat="member in DefaultOptions">
<select ng-model="option"
ng-options="o as o.Text for o in OptionsTree">
</select>
<select ng-model="subOption"
ng-options="s as s.Text for s in option.subOptions"
ng-disabled="!option"
ng-change="member.Id = subOption.Id">
</select>
</div>
如果用户选择一个新的HTML,但无法设置默认值,则此HTML将正确更新DefaultOptions ID。 我想念什么?
更改您选择的ng-model
以解决ng-repeat
:
然后将其放在您的控制器中:
// Main dropdown
$scope.member.option = OptionsTree[0];
接着:
// Sub dropdown
$scope.member.subOption = OptionsTree[0].subOptions[0].id
由于您的问题没有说明您是否想要id或整个对象,因此我假设整个对象用于主下拉列表,而仅假设id用于子下拉列表。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.