Angularjs表单验证如何在控制器内获取值
这是我的Html部分Angularjs表单验证如何在控制器内获取值,angularjs,angularjs-validation,Angularjs,Angularjs Validation,这是我的Html部分 <form name="userForm" ng-submit="submitForm()" novalidate> <!-- NAME --> <div class="form-group" ng-class="{ 'has-error' : userForm.name.$invalid && !userForm.name
<form name="userForm" ng-submit="submitForm()" novalidate>
<!-- NAME -->
<div class="form-group" ng-class="{ 'has-error' : userForm.name.$invalid && !userForm.name.$pristine }">
<label>Name</label>
<input type="text" name="name" class="form-control" ng-model="user.name" required>
<p ng-show="userForm.name.$invalid && !userForm.name.$pristine" class="help-block">You name is required.</p>
</div>
<button type="submit" ng-disabled="userForm.$invalid">Submit</button>
</form>
这就是为什么我无法从Html获取值到控制器的原因在ng submit的submitForm函数中没有传递任何参数!并在submitForm()中记录$scope.user&看看里面有什么!如果没有任何结果,则初始化$scope.user={};在submitForm()之外。然后可以进入submitForm函数$scope.user.name
$scope.submitForm = function (userForm) {
$scope.master = angular.copy(userForm);
if ($scope.userForm.$valid) {
debugger;
console.log($scope.userForm.name);
alert('our form is amazing');
console.log($scope.userForm);
}
};
希望有帮助 你能试试下面的代码吗。我想你们忘了在按钮事件中传递值 如果不想更改代码,可以在$scope.master中找到文本框值(与代码中的值相同)
名称
您的姓名是必需的
提交
var-app=angular.module('myApp',[]);
应用程序控制器('myCtrl',函数($scope){
$scope.submitForm=函数(userForm){
$scope.master=angular.copy(userForm);
如果($scope.userForm.$valid){
调试器;
log($scope.userForm.name);
警报(userForm.name)
警惕(“我们的形式令人惊讶”);
log($scope.userForm);
}
};
});
不要为函数定义参数。在控制器中使用$scope.user如果需要user的值,并且要获取表单,请在控制器中使用$scope.userForm
$scope.submitForm = function () {
$scope.master = angular.copy($scope.userForm);
.
.
.
}