我对 Angular 很陌生,可能我正在做一些完全错误的事情。 我正在使用两个 angularJs 应用程序,因为我不想在我的主应用程序中有任何登录逻辑。
我尝试通过以下方式提交常规 HTML 表单:
document.getElementById("loginForm").submit();
这是我的表格:
<form method="post" id="loginForm" action="Main.html">
<input type="hidden" name="token" value="{{regData.token}}"/>
</form>
问题是在服务器上“我没有获得最后的 regData.token 值。
这是js代码:
$scope.login = function () {
$scope.regData.token = "Very Old data";
$http
.post('/authenticate', $scope.user)
.success(function (data, status, headers, config) {
$scope.regData.token = "Very New Data";
document.getElementById("loginForm").submit();
})
.error(function (data, status, headers, config) {
delete $window.sessionStorage.token;
delete $window.sessionStorage.userName;
alert(data);
});
};
在服务器上我收到“非常旧的数据”。 我的假设是在成功回调中创建了一个新的 $scope,因此我试图发出更改,但没有运气。
知道如何获取新值“非常新数据”吗?
任何回应都将受到高度赞赏。
最佳答案
在 Angular 中,我们使用 ng-model 而不是 val。我还发现您没有发送有问题的对象。相反,您正在发送您尚未定义的 $scope.user 。我建议在继续之前阅读更多有关 angularjs 表单的内容 - http://scotch.io/tutorials/javascript/angularjs-form-validation
关于javascript - 无法将 token 传递给 AngularJS 中的表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23714866/