форма не отправлена ​​​​должным образом в angularjs с помощью struts2

Я использую структуру struts2 с angularjs. Есть две кнопки: одна для сброса текстовых полей со значением по умолчанию, а другая - для отправки страницы. моя отправка не работает. Моя страница JSP: -

<!DOCTYPE html>
<html>
	<head>
		<link rel="stylesheet"
			href="http://netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap.min.css">
		<script
			src="http://ajax.googleapis.com/ajax/libs/angularjs/1.3.16/angular.min.js"></script>
	</head>
	<body ng-app="postApp" ng-controller="postController">
		<div class="container">
			<div class="col-sm-8 col-sm-offset-2">
				<div class="page-header">
					<h1>
						Post data using angularJS
					</h1>
				</div>
				<form name="studentForm" novalidate >
					<div class="form-group">
						<label>
							Name
						</label>
						<input type="text" name="name" class="form-control"
							ng-model="user.name" required>
						<span ng-show="errorname">{{errorname}}</span>
					</div>
					<div class="form-group">
						<label>
							Username
						</label>
						<input type="text" name="username" class="form-control"
							ng-model="user.username" required>
						<span ng-show="errorUsername">{{errorUsername}}</span>
					</div>
					<div class="form-group">
						<label>
							Email
						</label>
						<input type="email" name="email" class="form-control"
							ng-model="user.email" required>
						<span ng-show="erroremail">{{erroremail}}</span>
					</div>
					<div><span><button ng-click="reset()" class="btn btn-primary">
						reset
					</button>	</span>
					<span>	<button type="submit" ng-click="submitForm()" ng-disabled = {{erroremail}}
                        class="btn btn-primary">
						Submit
					</button></span>
					</div>
				
				</form>
			</div>
		</div>


		<script>
	var postApp = angular.module('postApp', []);
	postApp.controller('postController', function($scope, $http) {
		$scope.reset = function() {
			$scope.user.name = "Mahesh";
			$scope.user.username = "Parashar";
			$scope.user.email = "[email protected]";
		}
			$scope.user = {};
			$scope.submitForm = function() {
				$http( {
					method : 'POST',
					url : '/angular/studentForm.action',
					data : $scope.user, 
					headers : {
						'Content-Type' : 'application/x-www-form-urlencoded'
					}
				}).success(function(data){
					if (data.errors) {
						$scope.errorname = data.errors.name;
						$scope.errorUsername = data.errors.username;
						$scope.erroremail = data.errors.email;
					} else {
						$scope.message = data.message;
					}
				}).error(function(data,status){
					return false;
				});
				
			};
			
		});
</script>
	</body>
</html>

вот мой класс действий.

package com.skilrock.Action;

импортировать com.opensymphony.xwork2.ActionSupport;

открытый класс StudentController расширяет ActionSupport {

/**
 * 
 */
private static final long serialVersionUID = 1L;

public String getFirstName() {
    return firstName;
}

public void setFirstName(String firstName) {
    this.firstName = firstName;
}

public String getLastName() {
    return lastName;
}

public void setLastName(String lastName) {
    this.lastName = lastName;
}

public String getEmail() {
    return email;
}

public void setEmail(String email) {
    this.email = email;
}

private String firstName;
private String lastName;
private String email;

public String stdController() {

    System.out.println(firstName + lastName + email);

    return SUCCESS;
}

}

моя кнопка сброса работает нормально, но когда я нажимаю кнопку отправки, имеющую пустую форму, она вызывает метод данного класса действия. Другой момент заключается в том, что каждый раз, когда форма пуста или нет, этот метод действия не получает значения формы ...


person amit kumar    schedule 16.11.2015    source источник
comment
что вы хотите сделать с отправкой формы? Проверка? Но согласно логике кода он сделает один вызов ajax и будет работать нормально.   -  person brk    schedule 16.11.2015
comment
да, я хочу подтвердить свою форму. Но при этом я хочу получить значение данных формы, когда я отправляю заполненную форму.   -  person amit kumar    schedule 16.11.2015
comment
но вы не проверяете поле. в submit вы просто отправляете форму, даже если она пуста   -  person brk    schedule 16.11.2015
comment
я не знаю, как проверить форму с помощью angularjs.   -  person amit kumar    schedule 16.11.2015
comment
Это может быть полезно stackoverflow.com/questions/18125777/. Вы также можете проверить поля без angular, используя простой js. После успешной проверки вы можете сделать вызов ajax   -  person brk    schedule 16.11.2015
comment
я использовал обязательное ключевое слово с каждым полем. Это тип проверки..   -  person amit kumar    schedule 16.11.2015
comment
связанные: stackoverflow.com/a/28341208/1654265   -  person Andrea Ligios    schedule 16.11.2015
comment
@ Andrea Ligios: братан, спасибо за ссылку, но я не хочу вызывать какой-либо URL-адрес, если какие-либо данные моей формы пусты. это похоже на то, что моя кнопка отправки будет действовать так, как будто она отключена, пока я не введу все данные в эту форму.   -  person amit kumar    schedule 16.11.2015
comment
@ user2181397 скопируйте мой текст jsp и запустите его на (plnkr.co). вы увидите, что я использовал проверки.   -  person amit kumar    schedule 16.11.2015
comment
@amitkumar Я знаю, и ты прав, лучше выполнять проверку на стороне клиента и предотвращать бесполезные сообщения. Но помните, вы ДОЛЖНЫ также выполнять проверку на стороне сервера, потому что ваши элементы управления / проверки / скрытые или отключенные кнопки можно обойти, манипулируя DOM / HTML, и тогда их недостаточно, если они используются самостоятельно. Я просто указал на это, не говоря, что вам не нужна проверка на стороне клиента.   -  person Andrea Ligios    schedule 16.11.2015
comment
Возможный дубликат Как передать данные формы с angulajs jsp на метод struts 2   -  person Aleksandr M    schedule 17.11.2015
comment
Он правильно проверяется, но все еще не может получить значения для моего класса действий Struts.   -  person amit kumar    schedule 20.11.2015