1

我有一个简单的 Angular 应用程序,其中包含两个不同模型的文本框

First Email: <input ng-model="firstEmail"/>
Second Email: <input ng-model="secondEmail"/>

现在,如果在第一封电子邮件中输入了某些内容,我希望将其填充到第二封电子邮件中,但如果手动编辑第二封电子邮件,则此绑定应该停止,即第一封电子邮件中的进一步更改不应影响第二封电子邮件。

我的代码:

<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.0-beta.1/angular.min.js"></script>
<script>
var emailApp = angular.module('emailApp', []);
emailApp.controller('EmailCtrl', ['$scope', function ($scope) {

}]);
</script>
</head>
<body ng-app="emailApp">
  <div ng-controller="EmailCtrl">
      First Email: <input ng-model="firstEmail"/>
      <br>
      Second Email: <input ng-model="secondEmail"/>
      </select>
  </div>
</body>
</html>
4

2 回答 2

3

您需要使用 watch 将 secondEmail 中的内容与 firstEmail 绑定。

  $scope.$watch('firstEmail',function(newVal,oldVal){
    $scope.secondEmail=newVal;
    })

普朗克

于 2015-02-13T10:27:39.273 回答
2

使用ng-change指令更新值。

<body ng-app="emailApp">
  <div ng-controller="EmailCtrl">
      First Email: <input ng-model="firstEmail" ng-change="secondEmail=firstEmail"/>
      <br>
      Second Email: <input ng-model="secondEmail"/>
  </div>
</body>

工作Plunkr

这可以帮助你。谢谢。

于 2015-02-13T10:44:21.513 回答