一直在努力解决这个问题,并希望有任何可以帮助我找出错误的原因。 servlet代码应该正常工作,因为它已经过测试而没有jquery / ajax函数。
这里是Jquery.ajax代码,我很确定它在这里出错了。但是经过几个小时的更改并尝试配置不同的设置后,似乎我已经停止了大量的选项。
我想要的是登录而不刷新页面。
<script>
$(document).ready(function() {
$('#submit').click(function() {
var dataForm = $('#form1').serialize();
$.ajax({
type: 'POST',
url: 'login',
data: dataForm,
success : function(data) {
$('#gg').text(responseText);
},
error : function() {
$('#gg').text(responseText);
},
});
});
});
</script>
Servlet:
public class Login extends HttpServlet {
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
resp.setContentType("text/html");
PrintWriter out = resp.getWriter();
String email = req.getParameter("email");
String pass = req.getParameter("pass");
if(Validate.checkUser(email, pass)){
out.println("Works");
else{
out.println("Fail");
}
}
}
}
形式:
<form method="post" id="form1">
<input type="text" name="email" />
<input type="text" name="pass" />
<input type="button" id="submit" value="login" />
</form>
<div id="gg"></div>
的web.xml:
<servlet>
<servlet-name>login</servlet-name>
<servlet-class>com.event.Login</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>login</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>