我有两个选择标签(比如Select 1& Select 2)和相应的ng-model变量,并在ng-change触发器上调用单独的方法。我正在尝试从“选择2”ng-change调用的方法中设置“选择1”选项值。我正在观察此设置的问题。 如果用户从“选择2”下拉菜单中选择一个值,则“选择1”选项的值将正确更新。但是,如果用户从“选择1”中选择一个值,然后当他尝试更改“选择2”下拉值时,“选择1”值不响应/更改。
请帮助我了解解决此问题的行为和指导。
我创建了一个捕获此行为的plnkr。请检查 https://plnkr.co/edit/tGN4ZxdHprnpx7aD7Pen?p=preview
var app = angular.module('plunker', []);
app.controller('MainCtrl', function($scope, $rootScope) {
$scope.a = 'b';
$scope.features = ['a', 'b', 'c'];
$scope.roles = ['a', 'c', 'b'];
$scope.b = function() {
alert("feature changing");
};
$scope.call = function(a){
console.log("call called : " + a);
$rootScope.selectedFeature = '';
$rootScope.selectedFeature = a;
}
$rootScope.selectedFeature = 'a';
});
我在这里复制了app.js代码
答案 0 :(得分:0)
某种程度上,ng模型正在解析为本地范围,而不是rootScope。我通过在HTML中将其作为rootScope变量使用来解决该问题。我更新了plunkr https://plnkr.co/edit/tGN4ZxdHprnpx7aD7Pen?p=preview
side=