Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用无线电输入重复AngularJS ng_Angularjs_Ng Repeat - Fatal编程技术网

使用无线电输入重复AngularJS ng

使用无线电输入重复AngularJS ng,angularjs,ng-repeat,Angularjs,Ng Repeat,我有一个作为枚举的选项列表: var Options = { Option0: 0, Option1: 1, Option2: 2, Option3: 3, Option4: 4 }; 以及可用选项的子列表: var availabledOptions = [ Options.Option0, Options.Option2, Options.Option4 ]; 然后,我尝试将可用选项列表显示为无线电输入,但它不起作用,我

我有一个作为枚举的选项列表:

var Options = {
    Option0: 0,
    Option1: 1,
    Option2: 2,
    Option3: 3,
    Option4: 4    
};
以及可用选项的子列表:

var availabledOptions = [
  Options.Option0,
  Options.Option2,  
  Options.Option4  
];
然后,我尝试将可用选项列表显示为无线电输入,但它不起作用,我想知道为什么$scope.selectedOption未更新

function main($scope) {

    $scope.availabledOptions = availabledOptions;

    $scope.selectedOption = Options.Option2;   

}
</script>

<div ng-app ng-controller="main">       
    <ul>
        <li ng-repeat="option in availabledOptions">
            <input name="options" type="radio" ng-model="selectedOption" ng-value="option">option #{{option}}
        </li>
    </ul>
    selected option: option #{{selectedOption}}
</div>
函数主($scope){
$scope.availabledOptions=可用选项;
$scope.selectedOption=Options.Option2;
}
  • 选项#{{option}
所选选项:选项{{selectedOption}

我尝试了ng repeat=“option in availabledOptions track by$index”,也没有使用name属性,但仍然不起作用

提前谢谢

尝试以下操作:

ng model=“$parent.selectedOption”


我的理解是,
ng repeat
创建了它自己的作用域,您必须上升一级。

或者您可以创建并将模型设置为作用域中不同对象的属性,如下所示:
$scope.selectedOption={}
ng model=“selectedOption.selected”