JSValidation 配置文件
2012-10-24 15:25 coffeescript 阅读(357) 评论(0) 编辑 收藏 举报最近学到JSValidation,上网查了下,这个验证框架是04年的,有一段历史了,所以可能出现在IE8里正常,但到了IE9里就无法工作,不过相关功能还是可以用javascript实现的。在Firefox里表现正常。
在下载完成的demo网页里,faq一栏作者已经指明了几个容易犯的错误。
1. JSValidation的路径配置看起来比较麻烦,在JSP/Servlet WebApp中到底该怎么配置?
在JSP/Servlet WebApp中,很多人经常把"/"认为是JSvalidation的RootPath。在普通的JSP WebApp中,/代表的往往不是应用程序根目录,而是站点的根目录。例如,http://localhost:8080/webapp/中,/代表http://localhost:8080/,而不是/webapp/。在一些开发框架如Struts,提供了URL Rewrite的功能,能够自动将/映射为/webapp/。但是,这一点,在jsvalidation中并不有效。
所以,你需要确认,RootPath是否就是真正的jsvalidation的路径。例如,你将jsvalidation放到了
webapp_home/javascripts/jsvalidation,这时候,RootPath应该是/webapp_name
/javascripts/jsvalidation,而并非/javascripts/jsvalidation。检验路径最有效的方法是直接打开浏览
器,浏览资源http://domain:port/RootPath/validation-config.xml。如果能够访问,说明配置正确。
2. 如何保证我编写的配置文件是正确的?
答案很简单。由于新的validation-config.xml文件采用了DTD验证,因此,只要你的文件能够在支持xml校验的浏览中打开并不报错,说明你的配置文件编写正确。
演示一个正确的validation-config.xml
1 <?xml version="1.0" encoding="utf-8"?> 2 <!DOCTYPE validation-config SYSTEM "validation-config.dtd"> 3 <validation-config lang="auto"> 4 <form id="form1" show-error="error" show-type="all"> 5 <field name="name" display-name="Name" onfail=""> 6 <depend name="required" /> 7 <depend name="commonChar" /> 8 </field> 9 <field name="email" display-name="Email"> 10 <depend name="required" /> 11 <depend name="email" /> 12 </field> 13 <field name="gender" display-name="Gender"> 14 <depend name="required" /> 15 </field> 16 <field name="codingtime" display-name="Coding Time"> 17 <depend name="required" /> 18 </field> 19 <field name="os" display-name="Using which OS"> 20 <depend name="required" /> 21 </field> 22 <field name="language" display-name="Using which language"> 23 <depend name="required" /> 24 </field> 25 <field name="suggest" display-name="Your suggest"> 26 <depend name="required" /> 27 </field> 28 </form> 29 30 </validation-config>