Нужно построить регулярное выражение для проверки номера телефона (вроде как написал) и внести дополнения в функцию CheckData()
. Тоесть по нажатию кнопки должно появится уведомление уведомление что номер телефона введен не по шаблону. Вот мои наработки, дальше застрял. Буду рад совету. Заранее спасибо!
JS:
<script type="text/javascript">
function CheckData()
{
var ans;
ans = confirm("Вы уверены, что хотите отправить введенные данные ?");
if (ans) submit();
alert("...");
return false;
}
function isValidPhone(Phone) {
return /^\+?\d{1}(?:\(?\d{3}\)?|\d{3})\d{3}-?\d{2}-?\d{2}$/.test(Phone);
}
</script>
HTML:
<html>
<head>
</head>
<body>
<center>
<form action="z1_1.html" onsubmit="CheckData();return false;">
<center> <b> Для регистрации необходимо указать ваши персональные данные</b></center>
<table>
<TR><TD>*Имя:</TD> <TD> <input type ="text" name ="Name" size ="15" onChange="this.value = this.value.toUpperCase()"><br> </TR>
<TR><TD>Организация(компания)</TD><TD> <input TYPE="text" name ="Company" size="15"><br></TD> </TR>
<TR><TD>Телефон</TD><TD> <input type ="text" name ="Phone" size="15"> <br></TD> </TR>
<TR><TD>*Адрес эл.почты</TD><TD> <input type ="text" name ="email" size="15" onChange="this.value=CheckAge(this.value)"
onFocus="this.select()"> </TD></TR><br>
<TD><input type="submit" size="15" value="Отправить">
<input type="reset"></TD>
<br>
<TD><left>* Поля обязательные для заполнения</left></TD>
</table>
</center>
</form>
</body>
</html>
Немного другая регулярка. Повзволяет использовать коды +7
и прочие.
const form = document.forms[0];
const input = document.querySelector('#phone');
const rx = /^(\+{0,})(\d{0,})([(]{1}\d{1,3}[)]{0,}){0,}(\s?\d+|\+\d{2,3}\s{1}\d+|\d+){1}[\s|-]?\d+([\s|-]?\d+){1,2}(\s){0,}$/im;
const rx2 = /[^0-9+]/g;
const rx3 = /^(\+\d{1,3})?\d{10,}$/;
function testPhone(phone) {
return rx.test(phone) && rx3.test(phone.replace(rx2,''));
}
form.addEventListener('input',()=>{
input.className = '';
input.classList.add(
testPhone(input.value) ? 'valid' : 'invalid'
);
});
#phone.valid { border: 1px solid #0f0; background: #cfc; }
#phone.invalid { border: 1px solid #f00; background: #fcc; }
<form>
<label for="phone">Введите телефон</label>
<input type="phone" id="phone" placeholder="+99(333)333-3333"/>
</form>
Валидные форматы:
(123) 456-7890
(123)456-7890
123-456-7890
1234567890
+31636363634
+3(123) 123-12-12
+3(123)123-12-12
+3(123)1231212
+3(123) 12312123
+3(123) 123 12 12
075-63546725
+7910 120 54 54
910 120 54 54
8 999 999 99 99
Инсточник
Чтобы вывести предупреждение о правильности регулярного выражения можно через alert вывести следующее Допустим есть регулярка regEx И можно сделать так
alert(regEx.test(text));
text это у нас текст, которые проходит проверку через регулярку, а regEx - сама регулярка Чтобы было понятнее, напишу блок кода, который недавно использовал
var text = document.getElementById("textBox").value;
var regEx = /^([0-9]{1,}[\.,][0-9]{1,}|[0-9]{1,})|(-[0-9]{1,}[\.,][0-9]{1,}|-[0-9]{1,})$/;
alert(regEx.test(text));
Надеюсь поможет)
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Хочу из БД вытащить инфу по датам, но возвращается Warning: #1411 Incorrect datetime value
У меня есть телеграм бот написанный на питонеБот работает с базой данных
Есть следующий код, занимающийся поиском элементов в строкеПочему-то ф-ия regex_search выдает ошибку в заданных элементах, конкретно в string переменной...
Программа должна удалять каждое четное слово, дублировать каждое нечетное слово, заменять все вхождения букв 'д ' на 'т' и найти первое цифровое...