AngularJS-在ng-repeat内的select上设置默认值[重复]
我遇到了AngularJS的问题-无法在中显示选定的值<select>
。
这是我的用例:
我有一个以ng-repeat开头的视图,用于显示组件。每个组件都包含一个选择以选择增值税率。创建新项目时,看起来不错。但是,当我编辑现有项目时,实际的vatRate代码未显示在select中,而是看到默认选项“-SelectVAT Rate-”而不是所选的VAT。
我的模型仅包含增值税率的ID。
通过一个组件,我可以在$scope中使用一个变量来设置当前商品的价值,但是在这里,我可以拥有多个组件,每个组件都有自己的增值税率,因此,我不确定在这里如何做:
这是我的代码
<div ng-repeat="i in items"> <label>{{i.id}}</label>
<input ng-model="i.title">
<select ng-model="i.vatRateId">
<option value="">--- Select an option ---</option>
<option ng-repeat="value in vatRates"
ng-selected="i.vatRateId == value.id"
value="{{value.id}}">{{value.value}}
</option>
</select>
</div>
和对象:
$scope.vatRates = [ { 'id': 1, 'value' : '20' },
{ 'id': 2, 'value' : '10' },
{ 'id': 3, 'value' : '7' }
];
$scope.items = [
{ 'id': 1, 'title' : 'Title1', 'vatRateId' : '1' },
{ 'id': 2, 'title' : 'Title2', 'vatRateId' : '2' },
{ 'id': 3, 'title' : 'Title3', 'vatRateId' : '3' }
];
这是一个现场演示来解释我的问题:
我无法为每个项目设置正确的值。
回答:
我对您的要求不是很清楚,但是如果要将默认选择值显示为<select>
,可以使用 。为了使用,你需要有
在您的控制器作为 到您<select>
,并添加NG-选择将<options ng-selected="{{defaultvalue ==
value.id}}" ng-repeat="value in vatRates">
对于代码和参考,我只是更改了您的插件,
http://embed.plnkr.co/ZXo8n0jE8r3LsgdhR0QP/preview
希望这可以帮助。
以上是 AngularJS-在ng-repeat内的select上设置默认值[重复] 的全部内容, 来源链接: utcz.com/qa/416505.html