js代码
//声明XMLHttpRequest对象
var xmlrequest;
//初始化XMLHttpRequest
function createXMLHttpRequest(){
if(window.XMLHttpRequest){
xmlrequest = new XMLHttpRequest();
}else if(window.ActiveXObject){
try{
xmlrequest = new ActiveXObject("Msxml2.XMLHTTP");
}catch(e){
try{
xmlrequest = new ActiveXObject("Microsoft.XMLHTTP");
}catch(e){
}
}
}
}
//定义回调函数
function processResponse(){
//响应完成
if(xmlrequest.readyState == 4){
//响应正常
if(xmlrequest.status == 200){
var head = xmlrequest.responseText;
alert(head);
}
}
}
//事件处理函数
function change(){
//初始化XMLHttpRequest对象
createXMLHttpRequest();
//设置请求的URI
var uri = "servlet/LoginServlet";
//打开与服务器响应地址的连接
xmlrequest.open("POST", uri, true);
//设置请求头
xmlrequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
//设置处理响应的回调函数
xmlrequest.onreadystatechange = processResponse;
var account = document.form.account.value;
var password = document.form.password.value;
//发送请求
xmlrequest.send("account=" + account + "&password=" + password);
}
servlet代码
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
System.out.println("post被触发了");
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
String account = request.getParameter("account");
String password = request.getParameter("password");
System.out.println(account);
System.out.println(password);
PrintWriter out = response.getWriter();
out.print("124578");
}
配置文件
<?xml version="1.0" encoding="UTF-8"?>
shangGou
LoginServlet
servlet.LoginServlet
LoginServlet
/servlet/LoginServlet
请大神帮我解答解答,AJAX向服务器发送请求后,servlet要如何响应页面才不会刷新呢?