我想让如果用户名没设或者密码没设的不提交。代码如下:
<script type="text/javascript">
function trim(s){
return s.replace(/^\s*/,"").replace(/\s*$/,"");
}
function check(){
var form = document.forms[0];
var errstr="";
if(trim(form.userName.value) == null || trim(form.userName.value) == ""){
errstr="用户名不能为空";
alert(errstr);
return false;
}
return false;
else if(form.userPassword.value == ""){
errstr="密码不能为空";
alert(errstr);
return false;
}
else return false;
}
</script>
</head>
<body>
<%@include file="menubar.jsp" %>
<%@include file="Msg.jsp" %><%--
<%
String user2 = ((User)session.getAttribute("loginUser")).getUserName();
FileManagerException msg = null;
if(user2.length()!= 0){
msg = new FileManagerException("你已经登陆,不能再注册");
request.setAttribute("msgkey",msg);
%>
<%
}
else{
%>
--%>
<form action="register" method="post" onsubmit="return check(this)">
<table width="50%" border="0" align="center">
<tbody>
<tr>
<td colspan="2"><div align="center">用户注册</div></td>
</tr>
<tr>
<td >学号</td>
<td>
<input type="text" name="userId" maxlength="50" size="50" >
</td>
</tr>
<tr>
<td >姓名(字数小于10)</td>
<td>
<input type="text" name="userName" maxlength="50" size="50" id="userName" >
</td>
</tr>
<tr>
<td >邮件(字数小于50)</td>
<td>
<input type="text" name="userMail" maxlength="50" size="50" >
</td>
</tr>
<tr>
<td >密码(字数小于50)</td>
<td>
<input type="password" name="userPassword" maxlength="50" size="50" id="userPassword">
</td>
</tr>
<tr>
<td >密码确认</td>
<td>
<input type="password" name="passwordConfig" maxlength="50" size="50" >
</td>
</tr>
<tr>
<td valign="top"> </td>
<td valign="top">
<input type="submit" value="提交"/>
<input type="reset" value="重置"/>
</td>
</tr>
</tbody>
</table>
</form>
但是他会显示出对话框,但还是提交了~这是为什么呀?谢谢。额,貌似财富没了~~不好意思哈~
if(trim(form.userName.value) == null || trim(form.userName.value) == ""){
errstr="用户名不能为空";
alert(errstr);
return false;
}else if(form.userPassword.value == ""){
errstr="密码不能为空";
alert(errstr);
return false;
}
去掉了 return fasle 和 else return false;你试试看。。
<form action="" name="form1" method="post" onsubmit="check();">
function check(){
if(form1.userName.value==""||form1.userPassword.value==""){
alert("提示内容");
return false;
}else{
alert("通过验证并提交");
}
}
还有就是你表单的onsubmit里边写的函数格式,跟你声明的也不一样呀。你onsubmit里边的带参数了,声明的时候是没有参数的。
如果还不行,那就把onsubmit改成onclick;