我想使用ng-keypress查看电子邮件复制。 所以我宣布了ng-model' usrEmail'。 当它用于“注册”时方法,它可以与输入值绑定,但它不能与checkDuplication'中的输入值绑定。
如何解决这个问题??
signup.html
<input type="email" class="form-control" name="usrEmail" ng-model="usrEmail" ng-required="true" ng-keyup="checkDuplication()">
...
<button class="btn btn-primary full-width" ng-click="register()">Register</button>
signup.js
var methods = {
checkDuplication: function($scope) {
$scope.usrEmail;
console.log($scope.usrEmail); // undifined!!!!!!!
...
},
register: function($scope){
$scope.user.usrEmail = $scope.usrEmail; // successfully binded!
...
}
谢谢!
答案 0 :(得分:0)
试试这个
<input type="email" class="form-control" name="usr-Email" ng-model="usrEmail" ng-required="true" ng-keyup="checkDuplication()">
答案 1 :(得分:0)
您不应将$ scope作为参数传递给Singup.js(控制器/服务)。您应该在ng-keyup="checkDuplication(usrEmail)"
之类的标记中传递模型,并在函数中使用:
checkDuplication: function(usrEmail) {
console.log(usrEmail);
...
}
这是一个帮助的Plunker:https://plnkr.co/edit/bl4Ui3LbDckvrg8XDjxP?p=preview