用js 写了一个前面数据验证! 出现了下面问题:js 片段//
function check() {
if(myForm.username.value.length < 6 || myForm.username.value.length >15) {
window.alert("用户名必需有6~15的字符");
myForm.username.focus();
return false;
}
}jsp 片段//
<form action="register.jsp" method="post" name="myForm" onsubmit="return check()">
<table width="80%" align="center" border="1" cellspacing="0" bordercolor="#999999">
<tr align="center">
<td colspan="2"><br>用户注册</td>
</tr>
<tr>
<td width="15%">用户名:</td>
<td><input type="text" name="username" maxlength="15" size="30" id="name"/></td>
<tr>问题是 当我在 用户名中 输入 123 提交的时候: 会出现对话框"用户名必需有6~15的字符" 但 后面的js 代码就不执行了
比如 用户名输入框数据清除 , 而且还发生了jsp页面跳转! (这应该不会跳转的) 怎么解决啊!!
function check() {
if(myForm.username.value.length < 6 || myForm.username.value.length >15) {
window.alert("用户名必需有6~15的字符");
myForm.username.focus();
return false;
}
}jsp 片段//
<form action="register.jsp" method="post" name="myForm" onsubmit="return check()">
<table width="80%" align="center" border="1" cellspacing="0" bordercolor="#999999">
<tr align="center">
<td colspan="2"><br>用户注册</td>
</tr>
<tr>
<td width="15%">用户名:</td>
<td><input type="text" name="username" maxlength="15" size="30" id="name"/></td>
<tr>问题是 当我在 用户名中 输入 123 提交的时候: 会出现对话框"用户名必需有6~15的字符" 但 后面的js 代码就不执行了
比如 用户名输入框数据清除 , 而且还发生了jsp页面跳转! (这应该不会跳转的) 怎么解决啊!!
if(form.username.value.length < 6 || form.username.value.length >15) {
alert("用户名必需有6~15的字符");
form.username.focus();
return false;
}
}
<form action="register.jsp" method="post" name="myForm" onSubmit="return check(myForm)">
<table width="80%" align="center" border="1" cellspacing="0" bordercolor="#999999">
<tr align="center">
<td colspan="2"> <br>用户注册 </td>
</tr>
<tr>
<td width="15%">用户名: </td>
<td> <input type="text" name="username" maxlength="15" size="30" id="name"/> </td>
<tr>
“比如 用户名输入框数据清除 , 而且还发生了jsp页面跳转! (这应该不会跳转的) 怎么解决啊!! ”
这句什么意思??
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB2312" />
<script language="JavaScript">
function check() {
if(myForm.username.value.length < 6 || myForm.username.value.length >15) {
alert("用户名必需有6~15的字符");
myForm.username.value="";
myForm.username.focus();
return false;
}
} </script></head>
<body>
<form action="register.jsp" method="post" name="myForm" onSubmit="return check()">
<table width="80%" align="center" border="1" cellspacing="0" bordercolor="#999999">
<tr align="center">
<td colspan="2"> <br>用户注册 </td>
</tr>
<tr>
<td width="15%">用户名: </td>
<td> <input type="text" name="username" maxlength="15" size="30" id="name"/>
<input type="Submit" name="Submit"/></td>
<tr/>
</form>
</body>
</html>
比如 用户名输入框数据清除
document.myForm.username.value="";
而且还发生了jsp页面跳转!
document.myForm.submit();提交FORM表单到register.jsp 相当于submit
所以你输入123 alert后,就是return false, 后面的js当然不执行了。
用户名输入框数据清除 , 而且还发生了jsp页面跳转!的问题。
onSubmit="return check()">
把这改了 用js document.myForm.submit();的方式。
直接在JS里用document.myForm.submit()方式来提交