JavaScript验证 联系客服

发布时间 : 星期五 文章JavaScript验证更新完毕开始阅读fe80c3ed19e8b8f67c1cb908

for (j = 0; j < 12; ++j) { if (Calendar._MN[j].substr(0, a[i].length).toLowerCase() == a[i].toLowerCase()) { m = j; break; } } break; case \ case \ case \ case \ hr = parseInt(a[i], 10); break; case \ case \ if (/pm/i.test(a[i]) && hr < 12) hr += 12; else if (/am/i.test(a[i]) && hr >= 12) hr -= 12; break; case \ min = parseInt(a[i], 10); break; } }

if (isNaN(y)) y = today.getFullYear(); if (isNaN(m)) m = today.getMonth(); if (isNaN(d)) d = today.getDate(); if (isNaN(hr)) hr = today.getHours();

if (isNaN(min)) min = today.getMinutes(); if (y != 0 && m != -1 && d != 0) return new Date(y, m, d, hr, min, 0); y = 0; m = -1; d = 0;

for (i = 0; i < a.length; ++i) { if (a[i].search(/[a-zA-Z]+/) != -1) { var t = -1; for (j = 0; j < 12; ++j) { if (Calendar._MN[j].substr(0, a[i].toLowerCase()) { t = j; break; } } if (t != -1) { if (m != -1) { d = m+1;

a[i].length).toLowerCase() == } m = t; } } else if (parseInt(a[i], 10) <= 12 && m == -1) { m = a[i]-1; } else if (parseInt(a[i], 10) > 31 && y == 0) { y = parseInt(a[i], 10); (y < 100) && (y += (y > 29) ? 1900 : 2000); } else if (d == 0) { d = a[i]; } }

if (y == 0) y = today.getFullYear(); if (m != -1 && d != 0) return new Date(y, m, d, hr, min, 0); return today; };

//扩展完成

//对象定义

var vform = new Object; //获取弹出提示的显示位置

vform.getAbsolutePos = function(el) { var _p = { x: 0, y: 0 }; do{ _p.x += (el.offsetLeft - el.scrollLeft); _p.y += (el.offsetTop - el.scrollTop); } while(el=el.offsetParent) return _p; };

vform.toString = function() {

return(\表单验证程序\\n版本:1.0beta\\n作者:雷晓宝\\n时间:2006-07-31\\n网址:[url]http://lxbzj.com[/url]\\n许可:LGPL\}

vform.rules = new Array; vform.rules.add = function(obj,minLength,dataType,errmsg,maxLength,rule,patams) {

var curlen = this.length; this[curlen] =

[obj,minLength,dataType,errmsg,maxLength,rule,patams];

//this[curlen] = [ 0 , 1 , 2 , 3 , 4 , 5 , 6 ];

return this.length; }

vform.init= function() {

if(document.getElementById(this.form_id)) { //获取表单 var o = document.getElementById(this.form_id); //遍历规则 for(var i = 0 ;i< this.rules.length;i++) { _r = this.rules[i] //如果存在元素,则添加验证程序 if(_o = o.elements[_r[0]]) { //判断是是否必填,是否有最小长度 if(_r[1] > 0 ) { _o.required = true;//必填的含义和最小长度为1是一样的 _o.minLength = parseInt(_r[1]); } else { _o.required = false; _o.minLength = 0; } //判断是否有最大长度; if(_r[4]) { _o.maxLength = parseInt(_r[4]); } //添加长度验证函数 _o.validLength = function () { var b =true; if(this.minLength) { b = (this.minLength <= this.value.length); } if(this.type == 'textarea' && this.maxLength ) {

b = b && (this.maxLength >= this.value.length ); } return (b); } //添加验证,进行格式验证 switch(_r[2]) { case 'e-mail': _o.validate = function() { this.isvalid = this.validLength() && this.value.isEmail(); return (this.isvalid); }; break; case 'url': _o.validate = function() { if (this.value.substring(0,7) != 'http://')this.value = 'http://' +this.value; this.isvalid = this.validLength() && this.value.isUrl(); return (this.isvalid); } break; case 'date': _o.validate = function() { var _d = Date.parse(this.value)||Date.parseDate(this.value); this.value = _d.toIsoDate(); this.isvalid = this.validLength() && this.value.isDateTime(); return (this.isvalid); a=a>b?1:1; } break; case 'number': _o.validate = function() { this.isvalid = this.validLength() && this.value.isInteger(); return (this.isvalid);