使用xml格式ajax的post请求

1.Java代码如下:

package com.eduask;

import java.io.IOException;

import java.util.Date;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

public class Demo4 extends HttpServlet {

@Override

protected void service(HttpServletRequest req, HttpServletResponse resp)

throws ServletException, IOException {

req.setCharacterEncoding("utf-8");

resp.setCharacterEncoding("utf-8");

resp.setContentType("text/xml;charset=utf-8");

String name=req.getParameter("name1");

if ("tom".equals(name)) {

resp.getWriter().write("<root>abc"+"<msg>"+"用户名不可以注册"+"</msg>"+"</root>");

}else{

resp.getWriter().write("<root>abc"+"<msg>"+"用户名可以注册"+"</msg>"+"</root>");

}


}

}

2.xmldemo4.jsp代码如下:

<body>

请输入用户名: <input id="name1" type="text" name="name1">

<span id="span1"></span>

<script type="text/javascript">

var getName1Id=document.getElementById("name1");

getName1Id.οnblur=function(){

var xhr=getXhr();

xhr.onreadystatechange=function(){

if(xhr.readyState==4){

if(xhr.status==200){

var doc=xhr.responseXML;

var e1=doc.getElementsByTagName("msg")[0];

var msg=e1.firstChild.nodeValue;

//alert(msg);

var span=document.getElementById("span1");

span.innerHTML="<font color=red>"+msg+"</font>";

}

}

}

xhr.open("post","/ajax/Demo4");

//设置消息头,告诉浏览器携带请求体数据;

xhr.setRequestHeader("content-type","application/x-www-form-urlencoded");

var span=document.getElementById("span1");

span.innerHTML="正在加载数据"

xhr.send("name1="+getName1Id.value);

}

function getXhr(){

var xhr;

if(window.XMLHttpRequest){

xhr=new XMLHttpRequest();

}else{

xhr=new ActiveXObject("microsoft,xmlhttp");

}

return xhr;

}

</script>

</body>

3.web.xml配置文件如下:

<!-- demo4 -->

<servlet>

<servlet-name>Demo4</servlet-name>

<servlet-class>com.eduask.Demo4</servlet-class>

</servlet>

<servlet-mapping>

<servlet-name>Demo4</servlet-name>

<url-pattern>/Demo4</url-pattern>

</servlet-mapping>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值