使用控制器时使用ngOptions

时间:2015-03-01 10:04:16

标签: angularjs

他全部,

我正在尝试使用角度ng选项和控制器As选项,它不起作用。我做错了什么?

先谢谢大家, 哈伊姆

我的HTML是:

<body ng-app="root">
    <div ng-controller="TestCtrl as tests">
        <select ng-options="test.name for test in tests.list">
        </select>
    </div>
    <script src="angular.js"></script>
     <script>
    angular.module("root",[])
        .controller("TestCtrl", function(){
            this.list=[
                {name:"a"},
                {name:"b"}
            ];
        });
</script> 
</body>

2 个答案:

答案 0 :(得分:5)

这是因为您没有指定必需的ng-model属性,如下所示:

<select ng-model="tests.selected" ng-options="test as test.name for test in tests.list">
</select>

并在您的控制器中:

...
this.selected = this.list[0];
...

请参阅Demo

答案 1 :(得分:2)

ng-options上设置

ng-model requires <select>

<select ng-model="tests.selectedTest" ng-options="test.name for test in tests.list">
</select>