Вот код проверки, который я использую для подтверждения номера мобильного телефона. Если я ввожу номер мобильного телефона с алфавитами или любым недопустимым номером, он также принимает это. Может кто-нибудь предположить, что в этом плохого?Номер мобильного номера также принимает недопустимый номер
Благодаря
var g=document.getElementById('mobile').value;
if (g.length == 0)
{
alert("Please Enter Mobile Number.");
formn.mobile.focus();
return false;
}
if(g.length>0)
{
if((g.length<10)||(g.length>10))
{
alert("Mobile number should be 10 digits");
document.getElementById('mobile').focus();
return false;
}
else
{
var h3=/^(?:(?:\+|0{0,2})91(\s*[\-]\s*)?|[0]?)?[789]\d{9}$/;
if(g.match(h3)!=null)
{
alert("Please Enter Valid Mobile Number");
document.getElementById('mobile').focus();
return false;
}
}
}
EDIT: Я думал об удалении состояния 10 цифр и позволяет пользователю ввести мобильные номера, как на их выбор и их собственный путь, а затем заменить/переформатировать с помощью регулярных выражений так что в базу данных входит только 10-значный номер мобильного телефона. Во время поиска google я нашел где-то на stackoverflow, что ^(?:(?:\+|0{0,2})91(\s*[\-]\s*)?|[0]?)?[789]\d{9}$
хорошо работает для перестройки в следующих сценариях. Цените, если кто-то может помочь мне переформатировать и показать переформатирован цифры, когда пользователь переходит в следующий текстовое поле (проигравшей фокус)
9883443344
09883443344
919883443344
0919883443344
+919883443344
+91-9883443344
0091-9883443344
+91 -9883443344
+91- 9883443344
+91 - 9883443344
0091 - 9883443344
'g.match (h3)! = Null': не должно ли это быть' g.match (h3) === null' или '! H3.test (g)'? – gcampbell
Общий совет: проще использовать ''. – gcampbell
well maxlength = "10" - хорошая идея. Спасибо за ваши советы, но пользователи набирают номера по своему выбору, поэтому я редактировал свой вопрос. – Sabha