2

我有以下功能来验证手机号码。

 function validate()
{
var a = document.form.mobile_no.value; 
if(a=="")
{
alert("please Enter the Contact Number");
//document.form.mobile_no.focus();
return false;
}
if(isNaN(a))
{
alert("Enter the valid Mobile Number(Like : 9566137117)");
//document.form.mobile_no.focus();
return false;
}
if((a.length < 1) || (a.length > 10))
{
alert(" Your Mobile Number must be 1 to 10 Integers");
//document.form.mobile_no.select();
return false;
}

}

我已将表单中的函数称为:

<form action="" method="post"  onsubmit="validate()" id="teacher_form">

来自用户的输入被视为:

但是这个过程并没有像它应该那样验证结果。无需输入验证即可接受该条目。

4

2 回答 2

1

您可以使用正则表达式作为

var regexMobile = /^[0-9]+$/;
var a = document.form.mobile_no.value; 
if (a.length < 10 || !a.match(regexMobile)) {
    alert("Enter valid 10 digit Mobile Number");
    return false;
}
于 2013-12-30T07:13:45.397 回答
0

在处理程序中添加return false;调用onsubmit。代码将是:

<form action="" method="post" onsubmit="validate(); return false;" id="teacher_form">

为了获得更好的性能和函数的多次使用,请将表单作为参数传递:

<form action="" method="post" onsubmit="validate(this); return false;" id="teacher_form">

该功能将类似于:

function validate(x) {
    var a = x.mobile_no.value;

你可以在这里看到它工作:http: //jsfiddle.net/h9b8G/

于 2013-08-16T08:07:44.967 回答