使用AJAX提交表单遇到的问题?

我是在loginServlet中处理的登录过程,1、如果用户名不存在或密码错误,则用户点击提交按钮时,页面实现无刷新提交并提示错误(这一点已经实现)。2、如果用户名跟密码匹配则实现页面跳转。但是我在servlet中设置了页面跳转(代码也确实执行),页面并无跳转,还是停留在登陆界面。 弄了半天也没弄明白,小弟初次使用AJAX,还望大家指导一下啊。谢谢。//javascript中的响应函数function processResponse() {if (XMLHttpReq.readyState == 4) {if (XMLHttpReq.status == 200) {var res = XMLHttpReq.responseText;document.getElementById("result").innerHTML = res;} else {window.alert("你请求的页面有异常");}}}//用户点击按钮时调用的函数function userCheck() {var username = document.loginform.username.value;var password = document.loginform.password.value;sendRequest("loginServlet?service=login&username=" + username+ "&password=" + password);}//这是我的表单。<form id="loginform" method="post" name="loginform"><table><tr><td>用户名:</td><td><input name="username"id="username"></td></tr><tr><td>密 码:</td><td><input type="password" name="password" id="password"></td></tr><tr><td colspan="2" align="center"><input type="button" id="submit" value="登录" onclick="userCheck()"></td></tr></table></form>//loginServlet中的部分代码int result = userdao.login(user);if(result == -1){out.println("<response>");out.println("<result>" + "用户名不存在!" + "</result>");out.println("</response>");out.close();}else if(result == 0){out.println("<response>");out.println("<result>" + "用户密码错误!" + "</result>");out.println("</response>");out.close();}else if(result == 1){HttpSession session = req.getSession();session.setAttribute("username", username);req.getRequestDispatcher("login_success.jsp").forward(req, resp);}
2026年09月15日 18:49
有1个网友回答
网友(1):

else if(result == 1)

这个结果里面没有执行跳转过程,在它里面最下面加一行:
window.href = "login_success.jsp"