10

有谁知道为什么在 AngularJS 中,select没有ng-model?

<select ng-model="bla_bla" ng-options="obj.value as obj.key for obj in languages"/>
<select ng-options="obj.value as obj.key for obj in languages"/>

上面的第一行代码将起作用,而第二行将不起作用。为什么 ???

谢谢!

4

1 回答 1

13

select在 Angular 应用程序中使用标签会生成ng-select指令,它是一个 HTMLSELECT元素加上角度数据绑定。查看该select指令的 Angular 源代码,以下是其link方法的前几行:

link: function(scope, element, attr, ctrls) {
    // if ngModel is not defined, we don't need to do anything
    if (!ctrls[1]) return;
    ...

所以它实际上是内置到框架中来中止链接的,directive如果ngModel没有定义,所以没有绑定发生。

于 2013-05-20T08:04:38.993 回答