放大镜站内搜索:


您现在的位置:首页 > 电脑 > 应用技巧 > 正文
简洁的表单验证程序
学生王国 ∥ http://www.xswg.com 更新时间:2006年8月24日 调整字体:

作者:mickeyboy
转载:http://www.blueidea.com/tech/web/2006/3957.asp

功能简述:

验证:

http地址
时间日期
e-mail
数字
字符长度检查
一项输入与另一项输入比较(例如:密码的确认输入)
大小比较(只能有一个比较符号)
特点

扩展容易,可以方便的添加自己需要的验证方式
兼容性好(ie5,6 firefox,oprea)
可用性好,没有使用alert()来弹出提示


编写思路:

整个程序的结构及较简单,为了能够验证一些常用的格式,先对js的内置对象进行了扩展。比如:

String.prototype.isUrl = function(){
       var url = /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/;
       var tmpStr = this;
       return url.test(tmpStr);
}

这个用来验证http地址。

然后写了一个对象叫做vform 包含了主要的功能,vform初始化的时候,会检查添加好的验证规则,并将要验证的表单控件对象扩展,添加validate() 和 validlength()两个函数,并且添加onblur事件来进行验证。
出错提示采用的建立div对象的方法,出错就显示,正确就隐藏。所以还需要给div定义一个样式。
使用前需要指定表单的id 注意是id不是name 要不然会出错,而规则添加的时候要指定的是表单控件的name属性不是id

验证规则参数:

obj — 表单控件name

minLength — 填写的字符串最小长度0意味着可以不填 而1意味着是必添

dataType — 验证格式 有

e-mail
url
date
number
any
还有两种动态的格式用\开头, \表单控件的name 表示必须与之的值一样;
\>数字 表示大于数字,类推;但是没有\>=这样的
maxLength — 最大长度。

与其他程序不一样的是:我对http地址与日期格式地址的处理不同,填入的地址没有http://我会添加上后验证,这样比较人性化,符合可用性的要求。日期的处理也是一样,先尽可能的对填写的数字进行格式转化,然后再验证。格式采用了yyyy-mm-dd的格式。

原始位置:http://lxbzj.com/product/vform/index.htm ,原始文件应用一个日历输入控件在此省略。。。


总代码

运行代码框

 

 


相关链接
来自:蓝色理想
编辑:
浏览:
评论查看全部评论
您的评论
姓名:
请您注意:
1.请遵守《中国互联网行业自律条款》及中华人民共和国其他各项有关法律法规。
2.严禁发表危害国家安全、损害国家利益、破坏民族团结、破坏国家宗教政策、破坏社会稳定、侮辱、诽谤、教唆、淫秽等内容的评论 。
3.用户需对自己在使用本站服务过程中的行为承担法律责任(直接或间接导致的)。
4.本站管理员有权保留或删除评论内容。
评论内容只代表网友个人观点,与本网站立场无关。