我有一个问题是在angular的ui.bootstrap中为无线电模型动态生成选项。我想我可以简单地对数组进行ng-repeat,使用它的btn-radio属性的内容,如下所示:
//in the controller
$scope.radioModel = undefined;
$scope.radioModelButtons = ["a", "b", "c"];
//in the html
<div class="btn-group" >
<button ng-repeat="value in radioModelButtons"
class="btn" type="button" ng-model="radioModel"
btn-radio="'{{value}}'">
{{value}}
</button>
</div>
我正在使用angular 1.1.4和ui.bootstrap 0.3.0。
Here is a jsfiddle of my efforts,如您所见,单选按钮独立运行,不会影响radioModel变量。
谢谢!
答案 0 :(得分:25)
这就是你应该写你的标记的方式:
<button ng-repeat="value in radioModelButtons"
class="btn" type="button" ng-model="radio.model"
btn-radio="value">
{{value}}
</button>
工作的jsFiddle:http://jsfiddle.net/yMLqz/2/
您的方法存在两个问题:
btn-radio
应与AngularJS表达式一起使用,而不是内插值ng-repeat
正在创建一个新范围,因此如果要绑定到父范围上定义的值,则需要考虑这一点