struts-config.xml 的form 要小写开头的

解决方案 »

  1.   

    在页面中添加return validateLoginForm(this);
    注意格式一定要validateXXX,XXX代表表单的名称1、login.jsp的页面
    <%@ page language="java" pageEncoding="ISO-8859-1"%>
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean"%> 
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html"%>
     
    <html> 
     <head>
      <title>test javascript</title>
     </head>
     <body>
      <html:form action="/login.do" onsubmit="return validateLoginForm(this)">
       username : <html:text property="username"/><html:errors property="username"/><br/>
       password : <html:password property="password"/><html:errors property="password"/><br/>   <html:submit/><html:cancel/>
      </html:form>
      <html:javascript formName="loginForm"/>
     </body>
    </html>2、在struts-config.xml配置动态FormBean(ValidatorActionForm)并加载插件
       <form-beans >
          <form-bean name="loginForm" type="org.apache.struts.action.ValidatorActionForm">
        </form-bean>
      </form-beans>  <plug-in className="org.apache.struts.validator.ValidatorPlugIn">
        <set-property property="pathnames" value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml" />
      </plug-in>3、建验证文件validation.xml (下面只允许为字母,test.username为资源文件的字符串)<!DOCTYPE form-validation PUBLIC
              "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.0//EN"
              "http://jakarta.apache.org/commons/dtds/validator_1_0.dtd">
    <form-validation>
     <formset>
      <form name="loginForm">
       <field property="username" depends="required,mask">
         <arg0 key="test.username"></arg0>
         <var>
          <var-name>mask</var-name>
          <var-value>^[a-zA-Z]*$</var-value>
         </var>
       </field>
      </form>
     </formset>
    </form-validation>4、显示获得输入的内容show.jsp
        //用get取得ValidatorActionForm里面的信息!,属性名和config.xml中的属性名相同!
          //out.println(request.getAttribute("loginForm").getClass());
          ValidatorActionForm loginForm=(ValidatorActionForm)request.getAttribute("loginForm");
          out.println("username ="+loginForm.get("username"));
          out.println("password ="+loginForm.get("password"));  
      

  2.   

    在login.jsp中主要代码:
     <html:form action="/login.do" onsubmit="return validateLoginForm(this)"> 
                <br />
                 <tr>
                   <font align="center" color=""><h3>用户登录</h3></font>
            </tr>     
            <tr>
                   <td><font size="2"><bean:message key="username"/></font>:</td>
                   <td><html:text property="username" size="12"></html:text><html:errors property="username" /></td> 
            </tr> 
            <tr>
                   <td><font size="2" ><bean:message key="password"/> </font>:</td>
                   <td> <html:password property="password" size="12"></html:password><html:errors property="password" /></td>
            </tr> 
                <tr>
                       <td> <html:submit>登录</html:submit></td>
                       <td>  <html:reset>取消</html:reset></td>
                </tr>
                 </html:form>
             <br><html:javascript formName="loginForm"/>
    在struts-config.xml中的主要代码:
     <form-beans>
     <form-bean name="loginForm" type="org.apache.struts.validator.DynaValidatorForm">
          <form-property name="password" type="java.lang.String" />
          <form-property name="username" type="java.lang.String" />
         </form-bean>
     </form-beans >
       <plug-in className="org.apache.struts.validator.ValidatorPlugIn">
            <set-property property="pathnames" value="/WEB-INF/validator-rules.xml,
                                                      /WEB-INF/validation.xml"/>
          </plug-in>
    </struts-config>
    在validation.xml中的主要代码
      <formset>
         <form name="loginForm">
         <field property="username"  depends="required,minlength,maxlength,mask">
          <arg key="loginForm.username" position="0"/>
           <arg name="minlength" key="${var:minlength}" resource="false" position="1"/>
            <var>
                <var-name>minlength</var-name>
                <var-value>5</var-value>
            </var>
          <arg name="maxlength" key="${var:maxlength}" resource="false" position="2"/>
            <var>
                <var-name>maxlength</var-name>
                <var-value>9</var-value>
            </var>
            <var>
            <var-name>mask</var-name>
            <var-value>^[a-zA-Z0-9]*$</var-value>
            </var>
         </field>
         <field property="password" depends="required,minlength,maxlength,mask">
         <arg key="loginForm.password" position="0"/>
         <arg name="minlength" key="${var:minlength}" resource="false" position="1"/>
            <var>
                <var-name>minlength</var-name>
                <var-value>5</var-value>
            </var>
          <arg name="maxlength" key="${var:maxlength}" resource="false" position="2"/>
            <var>
                <var-name>maxlength</var-name>
                <var-value>9</var-value>
            </var>
            <var>
            <var-name>mask</var-name>
            <var-value>^[a-zA-Z0-9]*$</var-value>
            </var>
         </field>
         </form>
    </formset>
    就可以了!!!!
      

  3.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【Gzd2003】截止到2008-07-29 17:48:39的历史汇总数据(不包括此帖):
    发帖的总数量:28                       发帖的总分数:560                      每贴平均分数:20                       
    回帖的总数量:20                       得分贴总数量:2                        回帖的得分率:10%                      
    结贴的总数量:18                       结贴的总分数:340                      
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:10                       未结的总分数:220                      
    结贴的百分比:64.29 %               结分的百分比:60.71 %                  
    无满意结贴率:0.00  %               无满意结分率:0.00  %                  
    楼主加油

    取消马甲机器人,请点这里:http://www.java2000.net/mycsdn/robotStop.jsp?usern=Gzd2003