@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

}

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

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

Похожие вопросы