Javascript 从ng repeat访问父控制器
我一直在学习angular,在尝试访问父控制器时发现了这一点 我希望使用$parent从ng repeat内部的父控制器访问相同的变量,因此当按下其中一个复选框时,应该更新所有变量,但这不是真的。为什么Javascript 从ng repeat访问父控制器,javascript,angularjs,Javascript,Angularjs,我一直在学习angular,在尝试访问父控制器时发现了这一点 我希望使用$parent从ng repeat内部的父控制器访问相同的变量,因此当按下其中一个复选框时,应该更新所有变量,但这不是真的。为什么 <div ng-app ng-controller="ParentCtrl"> <ul> <li ng-repeat="city in cities">{{city}}<input type="ch
<div ng-app ng-controller="ParentCtrl">
<ul>
<li ng-repeat="city in cities">{{city}}<input type="checkbox" ng-checked="$parent.somevar" /></li>
</ul>
</div>
- {{city}
在这种情况下,您需要使用ngModel
(双向绑定)而不是ngChecked
(单向绑定):
在这种情况下,您需要使用
ngModel
(双向绑定)而不是ngChecked
(单向绑定):
您没有为视图绑定模型,该模型可以反映更改。当前代码只读取模型(在本例中为
somevar
)状态。使用ng型号
代替选中的ng型号
。角度传感器将处理其余部分:
HTML
<div ng-app ng-controller="ParentCtrl">
<ul>
<li ng-repeat="city in cities">{{city}}<input type="checkbox" ng-model="$parent.somevar" /></li>
</ul>
</div>
您没有为视图绑定模型,该模型可以反映更改。当前代码只读取模型(在本例中为
somevar
)状态。使用ng型号
代替选中的ng型号
。角度传感器将处理其余部分:
HTML
<div ng-app ng-controller="ParentCtrl">
<ul>
<li ng-repeat="city in cities">{{city}}<input type="checkbox" ng-model="$parent.somevar" /></li>
</ul>
</div>
首先,您的jsiddle定义了一个ChildCtrl,但它没有任何效果,因为您从未使用过它。你可以删除它 其次,如ngChecked文档中所述,ngChecked和ngModel之间存在差异: 如果您希望同时选中/取消选中所有复选框,那么您可能希望选择ngModel而不是ngChecked 您的问题并不清楚您实际上想做什么,但下面是JSFIDLE的一个分支,它演示了通过$parent变量进行数据共享: 它只执行以下操作:
<li ng-repeat="city in cities">{{city}}<input type="checkbox" ng-model="$parent.somevar" /></li>
{{city}
为了说明这两个概念。首先,您的JSFIDLE定义了一个ChildCtrl,但它没有任何效果,因为您从未使用过它。你可以删除它 其次,如ngChecked文档中所述,ngChecked和ngModel之间存在差异: 如果您希望同时选中/取消选中所有复选框,那么您可能希望选择ngModel而不是ngChecked 您的问题并不清楚您实际上想做什么,但下面是JSFIDLE的一个分支,它演示了通过$parent变量进行数据共享: 它只执行以下操作:
<li ng-repeat="city in cities">{{city}}<input type="checkbox" ng-model="$parent.somevar" /></li>
{{city}
来说明这两个概念。我在角度方面也完全是新手,所以我可能是错的。但是我很少看到。。。代码中的内容。首先,根本不使用
ChildCtrl
。其次,看起来只有ng model
指令对复选框应用了双向绑定。但是ng checked
仅用于添加|删除checked
属性
而且我在角度方面也完全是新手,所以我可能是错的。但是我很少看到。。。代码中的内容。首先,根本不使用
ChildCtrl
。其次,看起来只有ng model
指令对复选框应用了双向绑定。但是ng checked
仅用于添加|删除checked
属性
和先生,请使用ng模型参考母公司的范围。 以下是我为您创建的演示[演示][1]
[1]: http://jsfiddle.net/nwg7bwLx/
先生,请使用ng模型参考母公司的范围。 以下是我为您创建的演示[演示][1]
[1]: http://jsfiddle.net/nwg7bwLx/
哦,对不起,夫人!我来自印度,所以不熟悉这些名字…:-)哦,对不起,夫人!我来自印度,所以不熟悉这些名字…:-)