快速业务通道

Struts表单验证设计指南 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-17
<action>的input属性,一个是<action>的validate属性.input属性必须指定包含校验Form的jsp页面的路径,以便Struts的校验框架校验失败的时候可以重新导向到原来的页面让用户重新输入.validator属性是一个boolean类型的属性,必须设置为true struts才会启动自动校验机制.

在JSP页面捕捉错误信息

Validator的校验机制可以定义在服务端进行校验或者通过Javascript在浏览器端进行校验.这两种不同的方式在JSP页面编写的时候有很大的区别.

Struts表单验证设计指南(5)

时间:2011-04-23

捕捉服务端的错误信息

要捕捉服务端校验的错误信息比较简单.只需要在JSP页面中嵌入一下的代码就可以在页面中显示错误信息,这些错误信息也可以自定义显示风格.

<logic:messagesPresent>    <bean:message key="test.error.descript"/>    <html:messages id="error">    <li><bean:write name="error"/></li>    </html:messages>    </logic:messagesPresent>

<bean:message key=”test.error.descript”/>通过ApplicationResources.properties文件中定义的信息向用户报告错误发生的原因和简单说明.

<html:messages id=”error”>

<li><bean:write name=”error” /></li>

</html:messages>

则是显示具体的由Validator框架产生的错误信息.

捕捉JavaScript的错误信息

要捕捉JavaScript产生的错误信息首先要使JSP页面产生Validator生成的Javascript代码,并在用户点击提交按钮的时候让提交按钮触发相应的校验函数.实现方法如下:

首先要让JSP触发校验函数,使用这样的HTML代码:

<html:form action="/testAction.do" onsubmit="return validateTestForm(this);">

其中action指定这个form对应的action,这个跟普通的form没有区别,onsubmit属性就指定了校验函数,它的规则是: return + 空格 + validator+ ValidatorForm的名字 + (this)

注意这样的组合规则是不能变的,否则会导致页面错误并不能实现校验功能.还要注意ValidatorForm的名字的第一个字母一定要大写,不管在Struts-congfig.xml文件中的定义是否大写,这里都要把它作为大写字母.

然后还要在JSP页面中产生可以实现校验的JavaScript代码,这个步骤也很简单,只需要在JSP页面的末尾加上下面一句:

<html:javascript formName="testForm" staticJavascript="true"/>

其中formName的名字要跟struts-config.xml文件中配置的一致,大小写也要一致.staticJavascript为true的时候Validator将使用JavaScript代码进行校验(这些Javascript代码由Struts 的validator框架自动产生,我们只需要配置validator.xml文件),staticJavascript为false的时候validator将使用服务端代码进行校验,这些服务端的校验代码也不需要我们编写.

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号