 
			
				02.08.2017, 16:37
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Аспирант 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 17.03.2017 
					
					
					
						Сообщений: 67
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
			
			 
				Помощь с ответом сервера клиенту
			 
			
		
		
		
		Если в коде увидите "swal", не пугайтесь, это фреймворк  Sweet  Alerts. От обычного alert'a отличается только дизайном!
 
Есть клиентский код (если точнее - функция).
 
function verify_auth () {
	var email = $('#inputEmail').val();
	var password = $('#inputPassword').val();
	$.ajax ({
		url : '/autorizate',
		type : 'POST',
		cache : false,
		data : {'email' : email, 'password' : password},
		dataType  : 'html',
		beforeSend : function () {
			$('#verificatebtn').attr('disabled', 'disabled');
		},
		success : function (data) {
			if (data == true) {
				email.val(" ");
				password.val(" ");
				swal({
					title : 'Успех!',
					text : 'Выполняется вход в ваш профиль...',
					type : 'success',
					confirmButtonText : '<button class="btn btn-link" style="text-decoration: none; color: white; font-size: 2rem;"> OK </button>'	
				});
			}
			else {
				if (data == false) {
					swal({
						title : 'Ошибка!',
						text : 'Что-то пошло не так! Попробуйте ввести данные корректно еще раз!',
						type : 'error',
						confirmButtonText : '<button class="btn btn-link" style="text-decoration: none; color: white; font-size: 2rem;"> OK </button>'	
					});
				}
			else {
				if (email == '') {
					swal({
						title : 'Ошибка!',
						text : 'Введите email правильно!',
						type : 'error',
						confirmButtonText : '<button class="btn btn-link" style="text-decoration: none; color: white; font-size: 2rem;"> OK </button>'	
					});
					$('#inputEmail').css("border-color", "red");
				}
				if (password == '') {
					swal({
						title : 'Ошибка!',
						text : 'Введите пароль правильно!',
						type : 'error',
						confirmButtonText : '<button class="btn btn-link" style="text-decoration: none; color: white; font-size: 2rem;"> OK </button>'	
					});
					$('#inputPassword').css("border-color", "red");
				}
				if (!(email.match('@'))) {
					swal({
						title : 'Ошибка!',
						text : 'Адрес должен содержать символ "@", а после него домен!',
						type : 'error',
						confirmButtonText : '<button class="btn btn-link" style="text-decoration: none; color: white; font-size: 2rem;"> OK </button>'	
					});
					$('#inputEmail').css("border-color", "red");
				}
			}
				$('#verificatebtn').removeAttr('disabled');
			}	
		}
	});
};
На сервере есть обработчик:
 
app.post("/autorizate", urlencodedParser, function (req, res) {
	var	data = {
		email_val : req.body.email,
		password_val : req.body.password
	};
    console.log(data.email_val);
    res.send(data);
});
Все работает, но я не понимаю, почему не появляется alert-оповещение (swal), о том что "Выполняется вход в ваш профиль...". Если можете скорректируйте код слегка.  
		
	
		
		
		
		
		
		
	
		
			
			
	
			
			
			
			
			
				 
			
			
			
			
			
			
				
			
			
			
		 
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				02.08.2017, 17:03
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 04.12.2012 
					
					
					
						Сообщений: 3,841
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Я всегда думал, что если делаешь  дополнительную валидацию форм, то она  обязана предшествовать запросу и в случае инвалидности формы не допускать создания запроса. 
У вас всё наоборот)
 
В начало блока «success» затолкайте строку 
 
console.log(data,data==true);
 
И посмотрите, что в консоль будет выведено.  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				02.08.2017, 20:34
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Аспирант 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 17.03.2017 
					
					
					
						Сообщений: 67
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от Nexus
			 
		
	 | 
 
	
		Я всегда думал, что если делаешь дополнительную валидацию форм, то она обязана предшествовать запросу и в случае инвалидности формы не допускать создания запроса. 
У вас всё наоборот) 
 
В начало блока «success» затолкайте строку  
console.log(data,data==true);
  
И посмотрите, что в консоль будет выведено.
	 | 
 
	
 
 НЕ СОВСЕМ ВАС ПОНЯЛ! Пожалуйста, объясните! 
Я вас понял так:
 
function verify_auth () {
	var email = $('#inputEmail').val();
	var password = $('#inputPassword').val();
	if (email == '') {
		swal({
			title : 'Ошибка!',
			text : 'Введите email правильно!',
			type : 'error',
			confirmButtonText : '<button class="btn btn-link" style="text-decoration: none; color: white; font-size: 2rem;"> OK </button>'	
		});
		$('#inputEmail').css("border-color", "red");
	}
	else if (password == '') {
		swal({
			title : 'Ошибка!',
			text : 'Введите пароль правильно!',
			type : 'error',
			confirmButtonText : '<button class="btn btn-link" style="text-decoration: none; color: white; font-size: 2rem;"> OK </button>'	
		});
		$('#inputPassword').css("border-color", "red");
	}
	else if (!(email.match('@'))) {
		swal({
			title : 'Ошибка!',
			text : 'Адрес должен содержать символ "@", а после него домен!',
			type : 'error',
			confirmButtonText : '<button class="btn btn-link" style="text-decoration: none; color: white; font-size: 2rem;"> OK </button>'	
		});
		$('#inputEmail').css("border-color", "red");
	}
	else {
		$.ajax ({
			url : '/autorizate',
			type : 'POST',
			cache : false,
			data : {'email' : email, 'password' : password},
			dataType  : 'html',
			beforeSend : function () {
				$('#verificatebtn').attr('disabled', 'disabled');
			},
			success : function (data) {
				console.log(data,data==true);
				if (data == true) {
					$('#inputEmail').val(" ");
					$('#inputPassword').val(" ");
					swal({
						title : 'Успех!',
						text : 'Выполняется вход в ваш профиль...',
						type : 'success',
						confirmButtonText : '<button class="btn btn-link" style="text-decoration: none; color: white; font-size: 2rem;"> OK </button>'	
					});
					$('#verificatebtn').removeAttr('disabled');
				}
				else if	(data == false) {
					swal({
						title : 'Ошибка!',
						text : 'Что-то пошло не так...',
						type : 'success',
						confirmButtonText : '<button class="btn btn-link" style="text-decoration: none; color: white; font-size: 2rem;"> OK </button>'	
					});
				}
			}
		});
	}
};
 
Но так сервер не отвечает ничего и кнопка не возвращается в "активное" состояние. В консоли ничего, а в консоли браузера у data == true значение false
 
Вот код сервера:
 
app.post("/autorizate", urlencodedParser, function (req, res) {
	var	data = {
		email_val : req.body.email,
		password_val : req.body.password
	};
    res.send(data);
});
 
		
	
		
		
		
		
		
		
	
		
			
			
	
			
			
			
			
			
				 
			
			
			
			
			
			
				
			
			
			
		 
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				03.08.2017, 09:27
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 04.12.2012 
					
					
					
						Сообщений: 3,841
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от АнонимныйПарень
			 
		
	 | 
 
	| 
		Но так сервер не отвечает ничего и кнопка не возвращается в "активное" состояние. В консоли ничего, а в консоли браузера у data == true значение false
	 | 
 
	
 
 Вы правильно поняли, что я имел ввиду. 
Если сервер не возвращает результат, то тут проблема не в js на стороне клиента, а на стороне сервера. 
Удаление атрибута disabled у вас в коде происходит только в случае успешного прохождения авторизации.
 
С серверным js я не знаком.
 
PS. у вас метод ajax ожидает от сервера html-контент, а получает явно не его (вероятно json), можно попробовать удалить эту строку:
 
dataType  : 'html',
  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				03.08.2017, 10:50
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 27.11.2015 
					
					
					
						Сообщений: 2,899
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		АнонимныйПарень, 
 Данные, передаваемые на сервер
 
{'email' : email, 'password' : password},
Обработка на сервере
 
var	data = {
		email_val : req.body.email,
		password_val : req.body.password
	};
Что за body в обработке на сервере? Откуда?  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				04.08.2017, 14:22
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Аспирант 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 17.03.2017 
					
					
					
						Сообщений: 67
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от Dilettante_Pro
			 
		
	 | 
 
	
		АнонимныйПарень, 
 Данные, передаваемые на сервер 
{'email' : email, 'password' : password},
 
Обработка на сервере 
var	data = {
		email_val : req.body.email,
		password_val : req.body.password
	};
 
Что за body в обработке на сервере? Откуда?
	 | 
 
	
 
 Это bodyParser. Специальная штука для обработки данных которые приходят  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
 
 |  
  |