Задать вопрос
@ProF1NE

Проблема AJAX, почему не работает валидация?

Шалом всем, голова уже болит, не могу понять в чем дело, почему не робит
Вся суть...вводишь код, если правильный, получаем сообщение, если нет, то повтор (вроде все просто), но у меня в коде есть проверка инпата на Jquery:
$('input#InputUpVerCode').keyup(function(){

		    var id = $(this).attr('id');
		    var val = $(this).val();

		    switch(id) {
		        case 'InputUpVerCode':
		            if(val != '' && val.length == 6){
                  		$(this).parent().removeClass('error').addClass('not_error');

                  		$('#vercode').removeClass('signup').addClass('signin').removeAttr('disabled');
                  
               		}else{
                  		$(this).parent().removeClass('not_error').addClass('error');
                  		$('#vercode').removeClass('signin').addClass('signup').prop('disabled', true);	
               		}
		        break;
		    } 
		});

этот код в первый раз срабатывает отлично, а после неверного ввода кода, перестает работать, стиль не меняется, кнопка не активна
Весь код:
$mail = $_POST['mail'];
$code = $_POST['vercode'];

$db->query("SELECT * FROM users WHERE email = '$mail'");
$user = $db->FetchArray();

$code2 = $user['vercode'];

if($code == $code2) {
echo "Успеншо!";
} else {
?>

<span class="error">Не верный код!</span>
<p>На почту <?=$mail; ?> было отправлено сообщение с кодом подтверждения:</p>
	<div class="input">
		<span>Ваш Код:</span>
		<input type="text" id="InputUpVerCode">
	</div>
	<a href="">Отправить еще раз</a>
	<button class="signup" id="vercode" disabled type="button">Подтвердить</button>
	<span class="signin" style="text-align: center; cursor: pointer; display: block;" type="button" onclick="goSignIn();">Войти</span>

<script>	
	$(document).ready(function(){
		$('input#InputUpVerCode').keyup(function(){

		    var id = $(this).attr('id');
		    var val = $(this).val();

		    switch(id) {
		        case 'InputUpVerCode':
		            if(val != '' && val.length == 6){
                  		$(this).parent().removeClass('error').addClass('not_error');

                  		$('#vercode').removeClass('signup').addClass('signin').removeAttr('disabled');
                  
               		}else{
                  		$(this).parent().removeClass('not_error').addClass('error');
                  		$('#vercode').removeClass('signin').addClass('signup').prop('disabled', true);	
               		}
		        break;
		    } 
		});
		$('#vercode').click(function(e){
			var mail = "<?=$mail; ?>";
	        e.preventDefault();
	        if($('.not_error').length == 1){
	         	$.ajax({
	                url: '/ajax/signup.vercode.php',
	                type: 'post',
	                data: {"vercode": $('#InputUpVerCode').val(), "mail": mail},
	                dataType: "html",
	               	success: function(html){
	                    $('.modal-body').html(html);
	              	}
	        	});
	        }else{
	          	return false;
	       	}
	   	});
</script>

<?php

}

?>
  • Вопрос задан
  • 66 просмотров
Подписаться 1 Простой 3 комментария
Решения вопроса 1
@ProF1NE Автор вопроса
Ошибка была банальная...в конце не закрыл функцию document.ready()
тема закрыта)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
div. Ставрополь
от 40 000 до 90 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽