我有两个不同ng-model的文本框。我在第一个文本框中使用$ watch填充第二个文本框,但是当我修改第二个文本框并保存更改时,相同的值将保存在两个文本框中。我希望能够保存第二个文本框的更新值。如果我不使用$ watch,两个文本框都会得到正确的值。所以,我认为$ watch正在破坏绑定方式。有没有办法获得更新的价值并同时使用$ watch?谢谢!! 这是示例代码, HTML,
<input type=text" ng-model='model1"/>
<input type="text" ng-model='model2"/>
and js,
$scope.$watch('model1',function(){
$scope.model2 = $scope.model1;
})
这会将值从第一个文本框复制到第二个文本框,但如果我更新第二个文本框,则会保存旧值。
答案 0 :(得分:0)
我弄清楚我做错了什么。当我想要更改值时我需要给出一个条件,否则它总会将它改为model1,因为我基本上将model1的值赋给了model2。一个简单的空检查就可以了,
$scope.$watch('model1',function(){
(if ($scope.model2 == null)){
$scope.model2 = $scope.model1;
})
}
感谢大家的帮助。