<%@page contentType="text/html;charset=gb2312" pageEncoding="gb2312"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-logic" prefix="logic" %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd"><html:html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>用户注册</title>
    </head>
    <script language="javaScript">
function check()
{
if(document.all.logname.value==null)
{
alert("请输入用户名!");
return false;
}
if(myform.password.value=="")
{
alert("请输入口令!");
return false;
}
      if(myform.profession.value=="")
{
alert("请输入地区!");
return false;
} var age=myform.age.value;
for(i=0;i<age.length;i++)
{
if(age.charAt(i)<"0")
{
alert("请输入数字!");
return false;
}
else if(age.charAt(i)>"9")
{
alert("请输入数字!");
return false;
}
}
var height=myform.height.value;
for(i=0;i<height.length;i++)
{
if(height.charAt(i)<"0")
{
alert("请输入数字!");
return false;
}
else if(height.charAt(i)>"9")
{
alert("请输入数字!");
return false;
}
} }
</script>
    <body>
        <h2>用户注册</h2>
        <form action="Register" method="post"  onsubmit="return check()"  name="myform">
         <table>
                <tr>
                    <td>用户名(*):</td>
                    <td><html:text property="logname" /></td>                </tr>
                <tr>
                    <td>密码(*):</td>
                    <td><html:password property="password"/></td>                </tr>
                <tr>
                    <td>密码确认(*):</td>
                    <td><html:password property="password2"/></td>                </tr>
                <tr>
                    <td>性别(*):</td>
                    <td><html:radio property="sex" value="男"/>男<html:radio property="sex" value="女"/>女</td>
                </tr>
                <tr>
                    <td>身高:</td>
                    <td><html:text property="height"/>cm</td>
                </tr>
                <tr>
                    <td>年龄:</td>
                    <td><html:text property="age"/></td>
                </tr>
                <tr>
                    <td>城市:</td>
                    <td><html:text property="city" /></td>
                </tr>
                <td>职业(*):</td>
                <td><html:text property="profession"/></td>
                <tr>
                    <td></td>
                    <td><html:submit>注册</html:submit>&nbsp;&nbsp;&nbsp;&nbsp;<html:reset>重填</html:reset></td>
                </tr>
            </table>
        </form>
    </body>
</html:html>加入js之前,form用<html:form>的情况下能运行并成功,这样就不行,why?

解决方案 »

  1.   

    <form action="Register" method="post" onsubmit="return check()" name="myform">
    如果我用<html:form action="Register" method="post">不用js,不如上面那样用的话,就能注册成功。如果用现在发的这个页面就不能注册成功。
      

  2.   

    不是 是action的路径就跟以前那不一样 说明,用<form>就是提交不到register.do而是别的路径
      

  3.   

    把js代码放到<head></head>标签之间试试看,不行就用“二分法”调试。
      

  4.   

    唉 真是无语我这 放到head里也不行 没提交到Register.do里 action竟然到了http://localhost:8084/Friend_blog1/pages/Register 这是怎么回事 不是说struts接受非html:的表单吗?
      

  5.   

    你的check()里并没有出现return true;在最后加一条return true;
      

  6.   

    我个人觉得最好不要把struts和标签和 HTML 标签混合使用....  
      

  7.   

    language="javascript"别把S大写,不知道对不对
      

  8.   

    <form action="Register" method="post" onsubmit="return check()" name="myform">
    form onsubmit?   
    <html:submit>注册</html:submit>改下
    <form action="Register" method="post" name="myform">
    ....
    <input type="button" value="注册" onclick="return check()"/> 
    </form>
      

  9.   

    不对吧 button能用action提交吗