这是我的
HTML代码
<select ng-model="node.field.name" data-nodrag ng-options="value.label as value.label group by value.name for value in myOptions" ng-change="getConditionsByType(node.field.name,value.name)"> </select>
什么时候使用getConditionsByType(node.field.name,value.name)我得到value.name为undefined
如何在更改选项时访问ng-repeat中的值!
解决方法
值没有在ng-change的范围内定义 – 它只在ng-options的microyntax表达式中定义.
相反,使模型成为“值” – 即myObjects的项.
<select ng-model="selectedOption" ng-options="value as value.label group by value.name for value in myOptions" ng-change="onChange()"> </select>
这意味着你不能直接将node.field.name设置为“value.name” – 在ngChange中这样做:
$scope.onChange = function(){ $scope.node.field.name = selectedOption.name; getConditionsByType($scope.node.field.name,selectedOption.name) }