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

Почему не работает проверка формы регистрации регулярными выражениями?

function proverka(obj){
	var a = obj.name.value;
	var b = obj.email.value;
	var c = obj.pass.value;
	var a_pattern = /[a-z]/i;
	var b_pattern = /.+@.+\..+/i;
	var c_pattern = /[0-9a-z]+/i;
	var prov = a_pattern.test(a);
	var prov1 = b_pattern.test(b);
	var prov2 = c_pattern.test(c);
	if (prov==true && prov1==true && prov2==true)
		$(".trfl").html("<span>&#10004</span>");
	else 
		$(".trfl").html("<span>&#10006</span>");
}


У меня задание: проверка на корректность ввода в форме через регулярные выражения. Все вроде нормально, но у меня постоянно выходит крестик.
Форма называется registr. В форме я проверяю ФИО(a), Город(a), емаил(b), пароль(c). Все ли я правильно сделал?
<input type="button" name="form" value="Регистрация" class="butt" onclick="proverka(registr);">
  • Вопрос задан
  • 255 просмотров
Подписаться 2 Оценить 6 комментариев
Решения вопроса 2
@antazy
Попробуйте
<form onsubmit="proverka(this);">

Update

/[a-z]/i - ФИО из одной буквы?
Ответ написан
@dexes56
Back-end engineer
Попробуйте вот такие регулярки:
var a_pattern = /^[а-яa-z ]+$/i;
var b_pattern = /^.+@.+\..+$/i;
var c_pattern = /^[0-9a-z]+$/i;


И попробуйте посмотреть что выдаст console.log переменных a, b, c
// ...
var a = obj.name.value;
var b = obj.email.value;
var c = obj.pass.value;
console.log(a);
console.log(b);
console.log(c);
// ...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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