-2

我在这里改述我的问题:我必须将单选按钮动态附加到现有的单选按钮列表中。我怎样才能通过 Angular JS 做到这一点?

4

2 回答 2

1

使用 ng-repeat 创建单选按钮。您必须注意,由于 ng-repeat 为每个项目创建一个子范围,因此您需要为您的 ng-model 使用嵌套属性(在此示例中,result.selectedColor 有效,但 selectedColor 不会。

如果您真的不想使用嵌套属性,您的替代方法是使用 $parent.selectedColor。我认为嵌套属性是一个更好的选择。

<form name="myForm">
  <div ng-repeat="color in colors">
    <input type="radio" ng-model="result.selectedColor" value="{{color.value}}">  {{color.name}} <br/>
  </div>  
  <tt>color = {{result.selectedColor}}</tt><br/>
</form>

然后只需将其添加到您的控制器中:

$scope.result = {};
$scope.colors = [
   {name:'red', value:'red'}, 
   {name:'blue', value:'blue'}, 
   {name:'green', value:'green'}
];

工作示例:Plunker

于 2013-08-13T22:32:37.700 回答
0

实际上使用“推送”我们可以将一个项目添加到现有列表中。并且角度绑定会自动更新单选按钮列表。

如果我们需要删除一个项目,我们可以使用'splice'。

于 2013-08-23T18:57:46.197 回答