服务器端
复制代码 代码如下:
package com.ljq.test;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;
import java.io.IOException;
import java.io.PrintWriter;
@SuppressWarnings("serial")
public class AjaxXmlServer extends HttpServlet{
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
try{
//修改一----响应的Content-Type必须是text/xml
response.setContentType("text/xml;charset=utf-8");
PrintWriter out = response.getWriter();
//1.取参数
String old = request.getParameter("name").trim();
//修改二-----返回的数据需要拼装成xml格式
StringBuilder builder = new StringBuilder();
builder.append("
//2.检查参数是否有问题
if(old == null || "".equals(old)){
builder.append("用户名不能为空").append("
} else{
//3.校验操作
String name = old;
if(name.equals("linjiqin")){
builder.append("用户名[" + name + "]已经存在,请使用其他用户名").append("");
} else{
builder.append("用户名[" + name + "]尚未存在,可以使用该用户名注册").append("");
}
out.println(builder.toString());
System.out.println(builder.toString());
}
} catch(Exception e){
e.printStackTrace();
}
}
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
修改web.xml
复制代码 代码如下:
请求页面
复制代码 代码如下:
"http://www.w3.org/TR/html4/loose.dtd">
js
复制代码 代码如下:
function verify(){
var userName = $("#userName").val();
$.ajax({
type: "POST", //http请求方式
url: "servlet/ajaxXmlServer", //服务器端url地址
data: "name=" + userName, //发送给服务器端的数据
dataType: "xml", //告诉JQuery返回的数据格式
success: callback //定义交互完成,并且服务器正确返回数据时调用的回调函数
});
}
//回调函数
function callback(data) {
var jqueryObj = $(data);
//获取message节点
var message = jqueryObj.children();
//获取文本内容
var text = message.text();
//4.将服务器段返回的数据动态的显示在页面上
$("#result").html(text);
}



