1

我是angularjs的新手,并试图找到一个解决方案,将选定的电台组值设置为ngmodel。收音机组选择的选项不更新角度的ngModel值

//my.html  

<div ng-controller='controller'> 
<div class="btn-group" ng-model="option" ng-repeat="arr in dragDropOption"> 
    <input type="radio" name="optionCorrectOpt" data-ng-model="option" 
    value="{{dragDropOption[$index].text}}"> 
     {{dragDropOption[$index].text}} 
</div> 

和 //mycontroller.js

app = angular.module('app', []); 

app.controller('controller', function ($scope) { 
$scope.dragDropOption = []; 
$scope.option = "not set"; 

$scope.dragDropOption = [{ 
    text: "analog" 
}, { 
    text: "isdn" 
}, { 
    text: "dsl" 
}]; 
// $scope.option = $scope.dragDropOption[0].text; 
}); 

My fiddle is here

可能是重复的问题,请帮我分享已经回答了的stackoverflow问题的链接或新的答案。提前致谢。

+0

你'arr'内循环,所以为什么用'dragDropOption [$指数]'? – Yoshi

+0

@Yoshi它是“arr.text”,而不是“dragDropOption [$ index] .text”这是在小提琴上调试代码。 –

回答

2

对于input变化

data-ng-model="option" 

到:

data-ng-model="$parent.option" 

演示Fiddle

+0

其作品适合我。非常感谢 –

+1

你也可以返回'$ scope.option = $ scope.dragDropOption [0] .text;' –

2

更换

$scope.option = "not set"; 

<input type="radio" name="optionCorrectOpt" data-ng-model="option" 
value="{{dragDropOption[$index].text}}"> 

要:

$scope.radioOption = {}; 
$scope.radioOption.selected = "not set" 

<input type="radio" name="optionCorrectOpt" data-ng-model="radioOption.selected" 
value="{{dragDropOption[$index].text}}"> 

JS FIDDLE