Javascript(AJAX)解析XML的代码(兼容FIREFOX/IE)


Posted in Javascript onJuly 11, 2010
//导入js文件 
function getResult(url, ready) { 
var xmlHttp; 
var r = function() { 
if (xmlHttp.readyState == 4) { 
if (xmlHttp.status == 200) { 
//alert(isIE); 
var xmlstr; 
var xmldoc; 
var isIE = !!(window.attachEvent && !window.opera); 
if (isIE) 
xmldoc = xmlHttp.responseXML; 
else { 
xmlstr = xmlHttp.responseText; 
alert(xmlstr); 
var parser = new DOMParser(); 
xmldoc = parser.parseFromString(xmlstr, "text/xml"); 
} 
try { 
ready(xmldoc); 
} catch (e) { 
alert(e.message); 
} 
} 
} 
} 
var create = function(url, r) { 
try { 
// Firefox, Opera 8.0+, Safari 
xmlHttp = new XMLHttpRequest(); 
} catch (e) { 
// Internet Explorer 
try { 
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); 
} catch (e) { 
try { 
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); 
} catch (e) { 
alert("您的浏览器不支持AJAX!"); 
return false; 
} 
} 
} 
xmlHttp.onreadystatechange = r; 
xmlHttp.open("GET", url, true); 
xmlHttp.send(null); 
} 
create(url, r); 
} //应用 
function ready(xmlDoc) 
{ 
x=xmlDoc.getElementsByTagName("a")[1]; 
y=x.childNodes[0]; 
txt=y.nodeValue; 
alert(txt); 
} 
getResult("../xml.jsp",ready);

xml:
<r> 
<a>ff</a> 
<a>ggd</a> 
</r>

childNodes 属性返回子节点的列表。<a> 元素只有一个子节点,即一个文本节点。
下面的代码检索 <a> 元素的文本节点:
x=xmlDoc.getElementsByTagName("a")[0];
y=x.childNodes[0];
nodeValue 属性返回文本节点的文本值:
x=xmlDoc.getElementsByTagName("title")[0];
y=x.childNodes[0];
txt=y.nodeValue;
结果:txt = "ggd"
Javascript 相关文章推荐
给artDialog 5.02 增加ajax get功能详细介绍
Nov 13 Javascript
js中方法重载如何实现?以及函数的参数问题
Aug 01 Javascript
详解JavaScript数组的操作大全
Oct 19 Javascript
javascript实现在网页中运行本地程序的方法
Feb 03 Javascript
微信JS-SDK坐标位置如何转换为百度地图坐标
Jul 04 Javascript
Angular和百度地图的结合实例代码
Oct 19 Javascript
vue loadmore组件上拉加载更多功能示例代码
Jul 19 Javascript
vue-cli项目如何使用vue-resource获取本地的json数据(模拟服务端返回数据)
Aug 04 Javascript
基于jquery实现五星好评
Nov 18 jQuery
使用layui+ajax实现简单的菜单权限管理及排序的方法
Sep 10 Javascript
layui实现checkbox的目录树tree的例子
Sep 12 Javascript
聊聊Vue中provide/inject的应用详解
Nov 10 Javascript
不同浏览器的怪癖小结
Jul 11 #Javascript
return false;和e.preventDefault();的区别
Jul 11 #Javascript
基于jQuery的树控件实现代码(asp.net+json)
Jul 11 #Javascript
js 模拟气泡屏保效果代码
Jul 10 #Javascript
浅谈javascript的数据类型检测
Jul 10 #Javascript
jquery nth-child()选择器的简单应用
Jul 10 #Javascript
SWFObject 2.1以上版本语法介绍
Jul 10 #Javascript
You might like
PHP 设计模式之观察者模式介绍
2012/02/22 PHP
PHP载入图像imagecreatefrom_gif_jpeg_png系列函数用法分析
2016/11/14 PHP
YII框架中搜索分页jQuery写法详解
2016/12/19 PHP
浅谈PHP中如何实现Hook机制
2017/11/14 PHP
如何在PHP中使用数组
2020/06/09 PHP
贴一个在Mozilla中常用的Javascript代码
2007/01/09 Javascript
JQuery 1.3.2以上版本中出现pareseerror错误的解决方法
2011/01/11 Javascript
Java File类的常用方法总结
2015/03/18 Javascript
基于JavaScript实现移动端TAB触屏切换效果
2015/10/20 Javascript
JQUERY表单暂存功能插件分享
2016/02/23 Javascript
在Docker快速部署Node.js应用的详细步骤
2016/09/02 Javascript
Bootstrap图片轮播效果详解
2017/10/17 Javascript
使用JS中的Replace()方法遇到的问题小结
2017/10/20 Javascript
浅谈webpack下的AOP式无侵入注入
2017/11/12 Javascript
详解js的视频和音频采集
2018/08/09 Javascript
JS实现拼图游戏
2021/01/29 Javascript
Vue自定义表单内容检查rules实例
2020/10/30 Javascript
详解vue-cli项目在IE浏览器打开报错解决方法
2020/12/10 Vue.js
[06:23]2014DOTA2西雅图国际邀请赛 小组赛7月12日TOPPLAY
2014/07/12 DOTA
python实现网站的模拟登录
2016/01/04 Python
使用Python写CUDA程序的方法
2017/03/27 Python
python读取和保存图片5种方法对比
2018/09/12 Python
解决pycharm py文件运行后停止按钮变成了灰色的问题
2018/11/29 Python
Python设计模式之迭代器模式原理与用法实例分析
2019/01/10 Python
python多进程并发demo实例解析
2019/12/13 Python
HTML中fieldset标签概述及使用方法
2013/02/01 HTML / CSS
Free People中国官网:波西米亚风格女装服饰
2016/08/30 全球购物
英国领先的鞋类零售商:Shoe Zone
2018/12/13 全球购物
写给女朋友的道歉信
2014/01/08 职场文书
创建文明城市标语
2014/06/16 职场文书
党的群众路线教育实践活动总结大会主持词
2014/10/30 职场文书
2014年应急工作总结
2014/12/11 职场文书
党员干部廉洁自律承诺书
2015/04/28 职场文书
开学典礼致辞
2015/07/29 职场文书
你为什么是穷人?可能是这5个缺点造成
2019/07/11 职场文书
SQLServer2019 数据库的基本使用之图形化界面操作的实现
2021/04/08 SQL Server