ajax中responseText与responseXML区别
1、"responseText”属性以字符串形式返回HTTP响应;“responseXML”属性以XML形式返回HTTP响应。
function getTel() {
var telText = document.getElementById("mantel");
telText.value = "";
if(xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
var message = xmlHttp.responseText;
telText.value = message;
}
}
}
2、“responseXML”属性返回了一份XML文档对象,可以使用W3C DOM节点树方法和属性对该XML文档对象进行检查和解析。
function getUserInfo() {
var peoplemobile=document.getElementById("_Peoplemobile");
if(xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
var xmlDoc = xmlHttp.responseXML.documentElement;
var xSel = xmlDoc.getElementsByTagName("select");//得到xml文档中,节点为select的对象
for (var i=0;i<xSel.length;i++){
var xValue = xSel[i].childNodes[0].firstChild.nodeValue;//得到select节点下的第一个节点
var xText = xSel[i].childNodes[1].firstChild.nodeValue; //得到select节点下的第二个节点
if(xValue=='peoplemobile'){
peoplemobile.value=xText;
}
}
}
}
}
二、java中的代码
/**
* ajax获得用户电话号码,返回文本
* @param mapping
* @param form
* @param request
* @param response
* @return
* @throws DataAccessException
* @throws IOException
* @throws ParseException
*/
public ActionForward toGetTelNumber(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws DataAccessException, IOException, ParseException {
String username = request.getParameter("person_id");
String tel = releasePlanService.getTelByName(username);
if (tel != null) {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
out.print(tel);
return null;
} else {
tel = "";
response.setContentType("text/xml;charset=UTF-8");
PrintWriter out = response.getWriter();
out.print(tel);
return null;
}
}
/**
* ajax获得用户信息,返回xml
* @param mapping
* @param form
* @param request
* @param response
* @return
* @throws DataAccessException
* @throws IOException
* @throws ParseException
*/
public ActionForward togetUserInfo(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws DataAccessException, IOException, ParseException {
String userid = request.getParameter("userid");
response.setContentType("text/xml;charset=UTF-8");
response.setHeader("Cache-Control", "no-cache");
String xml_start = "<?xml version = \"1.0\" encoding = \"UTF-8\"?>";
xml_start += "<selects>";
String xml_end = "</selects>";
String xml = "";
String last_xml = "";
try {
UserInfoExtendBean userInfoExtendBean=userInfoService.select(userid);
String mobile=userInfoExtendBean.getMobile()!=null?userInfoExtendBean.getMobile():"无";
String tel=userInfoExtendBean.getTel()!=null?userInfoExtendBean.getTel():"无";
String mail=userInfoExtendBean.getEmail()!=null?userInfoExtendBean.getEmail():"无";
xml = xml + "<select><value>" + "peoplemobile"
+ "</value><text>" + mobile
+ "</text></select>"
+ "<select><value>" + "peopletel"
+ "</value><text>" + tel
+ "</text></select>"
+ "<select><value>" + "email"
+ "</value><text>" + mail
+ "</text></select>";;
last_xml = xml_start + xml + xml_end;
response.getWriter().print(last_xml);
} catch (Exception e) {
return mapping.findForward("error");
}
return null;
}
ajax中responseText与responseXML区别的更多相关文章
- AJAX中同步和异步的区别和使用场景
一.简介Ajax请求最重要的问题是代码执行的顺序.最长遇到的问题是,我们定义一个变量接收ajax异步请求的返回结果,后续代码使用,然而后续代码在使用时该变量为初始值,始终得不到想要的结果!!!二.示例 ...
- ajax中get和post区别
参考地址:http://blog.csdn.net/laijieyao/article/details/40426257 首先要明确的事$.get方法是使用GET方式进行异步请求.$.post方法使用 ...
- 关于ajax中responseText不能返回脚本的问题。
今天做后台时想用ajax返回带有脚本的HTML DOM ,发现脚本被当成字符串了,查了一下responseText()方法返回的是字符串,查了一下百度,用了正则匹配,匹配到脚本然后执行,不想当一个伸手 ...
- jquery的load()事件和ajax中load()方法的区别
load事件 当图像加载时,改变 div 元素的文本: $("img").load(function(){ $("div").text("Image ...
- ajax中的async属性值之同步和异步及同步和异步区别
jquery中ajax方法有个属性async用于控制同步和异步,默认是true,即ajax请求默认是异步请求,有时项目中会用到AJAX同步.这个同步的意思是当JS代码加载到当前AJAX的时候会把页面里 ...
- AJAX中的请求方式以及同步异步的区别
AJAX中的请求方式以及同步异步的区别请求方式,分为GET与POST: GET 最为常见的HTTP请求,普通上网浏览页面就是GET.GET方式的参数请求直接跟在URL后,以问号开始.(JS中用wind ...
- ajax中Post和Get请求方式的区别?
ajax中Post和Get请求方式的区别: 1.Post传输数据时,不需要在URL中显示出来,而Get方法要在URL中显示. 2.Post传输的数据量大,可以达到2M,而Get方法由于受到URL长度的 ...
- 转:AJAX中xhr对象详解
XJAX ,并不是一种新技术的诞生.它实际上代表的是几项技术按一定的方式组合在一在同共的协作中发挥各自的作用. 它包括: 使用XHTML和CSS标准化呈现: 使用DOM实现动态显示和交互: 使用XML ...
- Ajax中的XMLHttpRequest对象详解
XMLHttpRequest对象是Ajax技术的核心.在Internet Explorer 5中,XMLHttpRequest对象以ActiveX对象引入,被称之为XMLHTTP,它是一种支持异步请求 ...
随机推荐
- .NET Core:过滤器
过滤器的作用是在 Action 方法执行前或执行后做一些加工处理.使用过滤器可以避免Action方法的重复代码.功能上更贴合业务的使用过滤器. 在Startup中的ConfigureServices方 ...
- 【网络知识之二】HTTP协议
HTTP协议(Hypertext Transfer Protocol,超文本传输协议),一种无状态的.应用层的.以请求/应答方式运行的协议,它使用可扩展的语义和自描述消息格式,与基于网络的超文本信息系 ...
- Spring Boot 代码覆盖率测试
代码覆盖率测试是规范软件开发流程里一个必不可少的环节.一般都是在PG末尾阶段,伴随着IT自测产生. ↑以上,是自己yy出来的啊,反正我司是这样要求的.不跑覆盖率,鬼知道你在代码里夹杂了一些什么东西. ...
- 社招C++后台面试-拿到offer
社招C++后台面试-拿到offer 之前在一家小公司上班,主要是做C语言的嵌入式软件开发,涉及过一点点C++.工作大概三年,然后去试试大公司,这个面试题是我拿到offer后4个月才拖拖拉拉的开始写,题 ...
- vue需求表单有单位(时分秒千克等等)
需求如下: 问题分析: 因为用elementui组件 el-input 相当于块级元素,后面的单位<span>分</span>会被挤下去,无法在同一水平. 解决方法: 不用它的 ...
- nohup 启动后台应用
nohup java -Xmx1024M -Xms1024M -jar app.jar --logging.level=warn --logging.path=/var/log/app--server ...
- Problem 1059 老师的苦恼
Bob写文章时喜欢将英文字母的大小写混用,例如Computer Science经常被他写成coMpUtEr scIeNce,这让他的英文老师十分苦恼,现在请你帮Bob的英文老师写一个程序能够将Bob的 ...
- 设置a标签,实现点击跳转页面的两种效果
设置a标签,实现点击跳转页面 这个问题,主要是设置a标签的属性target,下面对target属性进行描述: 跳转在同一个窗口 1,target="_self", 它使得目标文档 ...
- 10、VUE路由技术
1.前端路由 前端路由在很多开源的js类库框架中都得到支持,如AngularJS.Backbone.Vue.js等等. 前端路由和后端路由原理一样,是让所有的交互和展示在一个页面运行,以达到减少服务器 ...
- 好用到哭!8个技巧让Vim菜鸟变专家
原文: https://juejin.im/post/5da68cb8f265da5b8c03c4a1 Vim只不过是一个文本编辑器,但如果你曾见过真正的高手是如何使用vim的,你就会知道,这个软件出 ...