@Ablovka

Как сделать проверку правильности ввода на JS?

На PHP есть такой код:
Если первая буква P, а дальше идут цифры и они не превышают 7-8 символов, то выводим "yes"
if( substr(($_POST["p_input"]),0,1) != "P" ) {
echo "no";
}else{
	if(!ereg("^[0-9]{7,8}$", substr(($_POST["p_input"]),1))){ 
	echo "no";
}else{
	echo "yes";
	}
	}


Как этот код будет выглядеть на JS? Есть Jquery.
  • Вопрос задан
  • 261 просмотр
Решения вопроса 1
@Ablovka Автор вопроса
Додумал, доделал. спасибо @OVK2015
До этого форма проверялась на сервере при помощи AJAX. Если да, менялась форма ввода, путем добавления класса.
JS:
$(document).ready(function(){
	$("#p_input").keyup(function(){
		$.post("func/p_login.php",{ p_input:$(this).val() } ,function(data){
			if(data=='no'){
				$("#p_success").fadeTo(200,1,function(){
					$(this).addClass('glyphicon-remove');
					$(this).removeClass('glyphicon-ok');
					$("#p_form").addClass('has-error');
					$("#button_s").addClass('disabled');
					$("#p_form").removeClass('has-success');
					});
					}else{
						$("#p_success").fadeTo(200,1,function(){
							$(this).addClass('glyphicon-ok');
							$(this).removeClass('glyphicon-remove');
							$("#button_s").removeClass('disabled');
							$("#p_form").addClass('has-success');
							$("#p_form").removeClass('has-error');
							});
							}});
							});
							});


PHP:
<?PHP
if( substr(($_POST["p_input"]),0,1) != "P" ) {
echo "no";
}else{
	if(!ereg("^[0-9]{7,8}$", substr(($_POST["p_input"]),1))){ 
	echo "no";
}else{
	echo "yes";
	}
	}
?>


Теперь то же замое делается не на сервере, а у клиента с помощью JS с JQuery:
$(document).ready(function(){
	$("#p_input").keyup(function(){
		var p_input = $("#p_input").val();
		if(p_input.match(/^P[0-9]{7,8}$/) != null){
			$("#p_success").fadeTo(200,1,function(){
				$(this).addClass('glyphicon-ok');
				$(this).removeClass('glyphicon-remove');
				$("#p_form").addClass('has-success');
				$("#p_form").removeClass('has-error');
				});
				}else{
				$("#p_success").fadeTo(200,1,function(){
					$(this).addClass('glyphicon-remove');
					$(this).removeClass('glyphicon-ok');
					$("#p_form").addClass('has-error');
					$("#p_form").removeClass('has-success');
					});
					}});
					});
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@IceJOKER
Web/Android developer
PHP - preg_match('~^P\d{7,8}$~');
JS - "P12345678".search(/^P\d{7,8}$/); - https://learn.javascript.ru/regular-expressions-ja...
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 03:01
1000 руб./за проект
18 апр. 2024, в 21:56
2000 руб./за проект
18 апр. 2024, в 21:00
150 руб./за проект