使用JSValidation

来源:互联网 发布:淘宝女童内衣模特 编辑:程序博客网 时间:2024/04/28 03:17

在实际Web项目的开发过程中,很多HTML表单都需要使用JavaScript编写的代码验证,网络上有很多非常好的开源JavaScript验证程序可供直接使用。其中JSValidation验证框架是一个比较优秀的JavaScript客户端验证框架,作者为中国人"Michael Chen"。其中文文档支持非常全面,很适合我国的开发人员使用。

JSValidation验证框架的官方网址为http://cosoft.org.cn/projects/jsvalidation,该框架使用纯JavaScript编写,可以非常灵活地集成到不同语言编写的Web应用中。它使用XML文件配置需要验证的内容,其中包括以下13种验证规则。

输入内容非空。

输入数值必须为整数。

输入数值必须为双精度浮点数。

输入字符必须为普通英文字符(字母、数字及下画线)。

输入字符必须为中文字符。

输入的内容是否为E-mail格式。

输入内容最大长度。

输入内容最小长度。

输入的内容是否为日期格式(yyyy-mm-dd)。

自定义的正则表达式。

输入数值的整数范围(大于某数且小于某数)。

输入数值的双精度数范围。

输入内容必须与某个域值相同。

(1)下载JSValidation

通过网址http://cosoft.org.cn/project/showfiles.php?group_id=5223&release_id=5504可以下载到最新版本的JSValidation V1.0b4,下载页面如图2 22所示。下载的压缩文件解压后得到最重要的jsvalidation-framework.js、validation-config.xml和 validation-config.dtd文件,分别是JSvalidation的核心文件、JSvalidation的配置文件和对应的dtd文件。

 图2 22  JSValidation框架的下载页面

由于JSValidation框架的文件编码是GB2312,与项目中使用的文件编码不同,所以会出现中文乱码问题。为了解决这个问题,可以利用文本编辑器(如EditPlus)把jsvalidation-framework.js、validation-config.xml和 validation-config.dtd文件另存为UTF-8格式,如图2 23所示。

 图2 23  另存文件为UTF-8编码格式

(2)在guestbookv2.0项目中使用JSvalidation

在guestbookv2.0项目的WebRoot目录中新建一个js子目录,然后将修改后的validation-framework.js、validation-config.xml和validation-config.dtd文件复制到其中。

打开validation-framework.js,将大约在第21行的 var ValidationRoot = "";代码更改为var ValidationRoot = "/guestbookv2.0/js/",用于指定validation-config.xml文件的位置。

(3)编写validation-config.xml文件

在/guestbookv2.0/WebRoot/js目录下新建或者修改已有的validation-config.xml文件,其内容如下:

  1. SRC 2 17  alidation-config.xml  
  2. 001 <?xml version="1.0" encoding="utf-8"?>  
  3. 002 <!DOCTYPE validation-config SYSTEM "validation-config.dtd">  
  4. 003 <validation-config lang="auto">  
  5. 004     <form id="form1" show-error="alert" show-type="all">  
  6. 005         <field name="name" display-name="姓名" onfail="">  
  7. 006             <depend name="required" />  
  8. 007             <depend name="minLength" param0="3" />  
  9. 008             <depend name="maxLength" param0="20" />  
  10. 009         </field>  
  11. 010         <field name="title" display-name="主题">  
  12. 011             <depend name="required" />  
  13. 012         </field>  
  14. 013         <field name="email" display-name="email">  
  15. 014             <depend name="email" />  
  16. 015         </field>          
  17. 016     </form>  
  18. 017 </validation-config> 

使用JSValidation组件对addMessage.jsp页面中的HTML表单内容进行合法性验证,验证的条件包括姓名是必须输入的且为3个~20个字符、主题必须输入的,以及输入的E-mail地址要符合合法的格式。


原创粉丝点击