现在上面的都改过了,但是在点保存时,用户名能验证,但是在验证真实姓名时,还没输入直接就提示注册成功了---- <%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %> <jsp:useBean id="connDB" scope="page" class="beans.connDB"/> <html> <head> <title>用户注册成功!</title> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> </head><body> <% request.setCharacterEncoding("gb2312"); String username=request.getParameter("username"); String TrueName=request.getParameter("TrueName"); String PassWord=request.getParameter("PassWord1"); String city=request.getParameter("city"); String address=request.getParameter("address"); String postcode=request.getParameter("postcode"); String cardNO=request.getParameter("cardNO"); String CardType=request.getParameter("CardType"); String Tel=request.getParameter("Tel"); ResultSet rs=connDB.executeQuery("select * from Member where username='"+username+"'"); if (rs.next()){ out.println("<script language='javascript'>alert('该用户名已经存在,请重新注册!');window.location.href='register.jsp';</script>"); }else{ String sql="Insert into Member (username,TrueName,PassWord,city,address,postcode,cardNO,CardType,Tel) values('"+username+"','"+TrueName+"','"+PassWord+"','"+city+"','"+address+"','"+postcode+"','"+cardNO+"','"+CardType+"','"+Tel+"')"; int ret=0; ret=connDB.executeUpdate(sql); if (ret!=0){ out.println("<script language='javascript'>alert('用户注册成功!');window.location.href='index.jsp';</script>"); }else{ out.println("<script language='javascript'>alert('用户注册失败!');window.location.href='register.jsp';</script>"); } } %> </body> </html>高手在帮忙看下啊~谢谢
肯定是js出错了 应该写成 onsubmit="check(myform)"
你这里并没有对TrueName进行处理啊 建议你验证一下试试 看还会不会出现这个问题
function openwin(UID) if (UID==""){ alert("请输入用户名!"); myform.UserName.focus(); return; } var str="checkUserName.jsp?username="+UID; window.showModalDia(str,"","dialogWidth=300px;dialogHeight=150px;status=no;help=no;scrollbars=no"); }这段是什么意思、高手帮忙解释下
{
var from = document.forms[0];
if (form.username.value==""){
alert("请输入用户名!");myform.username.focus();return false;
}
而且调用函数也有点乱,你最好这么写:
在<form action="register_deal.jsp" method="post" name="myform" onsubmit="return check(this)">
在把check()改成check(myform),最后把返回值返回true;
你再试试
慢慢调就好了
alert("请输入用户名");
return false;
}
其它的form 都改成表单名字 myform
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<jsp:useBean id="connDB" scope="page" class="beans.connDB"/>
<html>
<head>
<title>用户注册成功!</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head><body>
<%
request.setCharacterEncoding("gb2312");
String username=request.getParameter("username");
String TrueName=request.getParameter("TrueName");
String PassWord=request.getParameter("PassWord1");
String city=request.getParameter("city");
String address=request.getParameter("address");
String postcode=request.getParameter("postcode");
String cardNO=request.getParameter("cardNO");
String CardType=request.getParameter("CardType");
String Tel=request.getParameter("Tel");
ResultSet rs=connDB.executeQuery("select * from Member where username='"+username+"'");
if (rs.next()){
out.println("<script language='javascript'>alert('该用户名已经存在,请重新注册!');window.location.href='register.jsp';</script>");
}else{
String sql="Insert into Member (username,TrueName,PassWord,city,address,postcode,cardNO,CardType,Tel) values('"+username+"','"+TrueName+"','"+PassWord+"','"+city+"','"+address+"','"+postcode+"','"+cardNO+"','"+CardType+"','"+Tel+"')";
int ret=0;
ret=connDB.executeUpdate(sql);
if (ret!=0){
out.println("<script language='javascript'>alert('用户注册成功!');window.location.href='index.jsp';</script>");
}else{
out.println("<script language='javascript'>alert('用户注册失败!');window.location.href='register.jsp';</script>");
}
}
%>
</body>
</html>高手在帮忙看下啊~谢谢
应该写成 onsubmit="check(myform)"
建议你验证一下试试
看还会不会出现这个问题
if (UID==""){
alert("请输入用户名!");
myform.UserName.focus();
return;
}
var str="checkUserName.jsp?username="+UID;
window.showModalDia(str,"","dialogWidth=300px;dialogHeight=150px;status=no;help=no;scrollbars=no");
}这段是什么意思、高手帮忙解释下