求助 jsp中调用JavaScript 验证。
小菜 第一次写这种,这样验证怎么不行?<body>--------------------编程问答-------------------- 求助大大们看一下 --------------------编程问答-------------------- 我没看到你哪里调用了check(action)方法,你表单提交按钮呢? --------------------编程问答--------------------
<script language="javascript">
function on_submit()
{
if (form1.username.value == "")
{
alert("用户名不能为空,请输入用户名!");
form1.username.focus();
return false;
}
if (form1.password1.value == "")
{
alert("用户密码不能为空,请输入密码!");
form1.password1.focus();
return false;
}
if (form1.password2.value == "")
{
alert("用户确认密码不能为空,请输入密码!");
form1.password2.focus();
return false;
}
if (form1.password1.value != form1.password2.value)
{
alert("密码与确认密码不同");
form1.password.focus();
return false;
}
}
</script>
<script language="javascript">
function check(action)
{
form1.action=action;
form1.submit();
if (form1.username.value == "")
{
alert("用户名不能为空,请输入用户名!");
window.location.href="register.jsp";
}
}
</script>
<form name="form1" action="register_action.jsp" method="post">
<table width="339" border="1" height="323">
<tr>
<td colspan="3">注册窗口</td>
<tr>
<td>用户名</td>
<td><input type="text" name="username" size="20"></td>
</tr>
<tr>
<td>密码</td>
<td><input type="password" name="password1" size="20"></td>
</tr>
<tr>
<td>确认密码</td>
<td><input type="password" name="password2" size="20"></td>
</tr>
</table>
</form>
</body>
<td colspan="2">
<input type="submit" name="submit" value="确认">
<a href="login.jsp">返回</a>
</td>
check(action) 要在哪里调用? --------------------编程问答-------------------- 你的确认按钮不要用submit属性,用button吧,然后用onclick事件调用你的脚本验证方法,验证全部通过后再脚本提交你的form。 --------------------编程问答--------------------
大神 能不能帮我改一下代码?谢谢了 --------------------编程问答-------------------- check()方法完全没必要写,直接在on_submit里面写提交即可。
只要每个不通过的时候赋一个变量flag=false;即可
if(flag==true)
{
form1.action="";
form1.submit();
} --------------------编程问答-------------------- 表单改下:
<form name="form1" action="register_action.jsp" method="post"
onsubmit="return sub();>
提交:
<input type="submit" value="确认">
验证:
function sub{
if (form1.username.value == "")
{
alert("用户名不能为空,请输入用户名!");
form1.username.focus();
return false;
}else if (form1.password1.value == "")
{
alert("用户密码不能为空,请输入密码!");
form1.password1.focus();
return false;
}else if (form1.password2.value == "")
{
alert("用户确认密码不能为空,请输入密码!");
form1.password2.focus();
return false;
}else if (form1.password1.value != form1.password2.value)
{
alert("密码与确认密码不同");
form1.password.focus();
return false;
}else{
return true;
}
}
你试下,你没成功主要是你全部返回的false,没返回true,全部通过提交给action处理 --------------------编程问答-------------------- 谢谢哈 --------------------编程问答--------------------
alert("用户密码不能为空,请输入密码!");
form1.password1.focus();
瞄了一眼。。上面这两行都是一样的,没必要写这么多次撒。合并起来 --------------------编程问答--------------------
正解 --------------------编程问答--------------------
为什么按照这个方法还是不行
--------------------编程问答-------------------- ....你确定你没写错么 --------------------编程问答-------------------- 哪里调用js验证了啊,没看到 --------------------编程问答--------------------
正解 --------------------编程问答-------------------- LZ你最好仔细查看一遍
补充:Java , Web 开发