from:http://bbs.51js.com/thread-68161-1-1.html
//表单验证类
function validatorclass()
{
var iserror = false;
//检查姓名,只能输入中文、字母、数字、下划线
this.chkname = function(obj,msg)
{
if (iserror) return;
if (obj.value.trim().length }
//检查邮件地址
this.chkemail = function(obj,msg)
{
if (iserror) return;
if (!/^w+@w+.(?:com|cn|org|net|cc|tv|info|com.cn|net.cn|org.cn|gov.cn)$/i.test(obj.value.trim())) errorhandle(obj,msg);
}
//检查地名,只能是中文,并不能为空
this.chkplace = function(obj,msg)
{
if (iserror) return;
if (obj.value.trim().length }
//检查详细地址
this.chkaddress = function (obj,msg)
{
if (iserror) return;
if (obj.value.trim().length }
//检查邮件编码
this.chkpostnumber = function (obj,msg)
{
if (iserror) return;
if(!(/^d{6}$/.test(obj.value.trim()))) errorhandle(obj,msg);
}
//检查手机号码
this.chkmobile = function (obj,msg)
{
if (iserror) return;
if (!(/^(?:13d|159)-?d{5}(d{3}|*{3})$/.test(obj.value.trim()))) errorhandle(obj,msg);
}
//检查固定电话号码
this.chkphone = function (obj,msg)
{
if (iserror) return;
if (!((/^d{3,4}-?d{4,5}(d{3}|*{3})$/.test(obj.value.trim())))) errorhandle(obj,msg);
}
//提交表单事件
this.submit = function (form,msg)
{
if (iserror) return;
if (msg) alert(msg);
form.submit();
}
//错误处理
function errorhandle(obj,msg)
{
alert(msg);
iserror = true;
obj.focus();
}
}
应用实例:
function chkform()
{
var form = document.testform;
var validator = new validatorclass();
validator.chkname(form.zd_username,订货人姓名不合法!);
validator.chkemail(form.zd_email,订货人邮件地址不合法!);
validator.chkplace(form.zd_province,订货人省份不合法!);
validator.chkplace(form.zd_city,订货人城市不合法!);
validator.chkaddress(form.zd_address,订货人地址不合法!);
validator.chkpostnumber(form.zd_zip,订货人邮编不合法!);
validator.chkmobile(form.zd_mobile,订货人移动电话不合法!);
validator.chkphone(form.zd_phone,订货人固定电话不合法!);
validator.submit(form,验证成功!);
}
