在ng-click函数中传递logInModel时,它未被定义。然而,当我使用调试器时,我可以看到我的属性正在填充值。
有人能给我解释一下吗?
$scope.logInModel = {
userName: "",
password: ""
};
$scope.postLogin = function (logInModel) {
console.log("logInModel " + logInModel);
authService.postLogin(logInModel).then(successCallback, errorCallBack);
}
<div>
<div class="row">
<span>
User Name:
<input type="text" name="txtUserName" ng-model="logInModel.userName" />
</span>
</div>
<div class="row">
<span>
Password:
<input type="password" name="txtUserName" ng-model="logInModel.password" />
</span>
</div>
<div class="row">
<span>
<button type="submit" name="btnSubmit" ng-click="postLogin(loginmodel)">
<span> Sign In</span>
</button>
</span>
</div>
</div>
ng点击中的大小写错误。使用大写字母"I"one_answers"M"。。。如logInModel
您在视图中传递postLogin(loginmode),但在$scope中,它是loginmodel,大写I和M,这就是它未定义的原因。
您的传递参数是错误的。它应该是ng-click="postLogin(logInModel)"