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 相关文章推荐
JS解密入门之凭直觉解
Jun 25 Javascript
jQuery 相关控件的事件操作分解
Aug 03 Javascript
iframe的onreadystatechange事件在firefox下的使用
Apr 16 Javascript
js实现touch移动触屏滑动事件
Apr 17 Javascript
手机端页面rem宽度自适应脚本
May 20 Javascript
基于jQuery实现二级下拉菜单效果
Feb 01 Javascript
IONIC自定义subheader的最佳解决方案
Sep 22 Javascript
不间断循环滚动效果的实例代码(必看篇)
Oct 08 Javascript
js实现的简练高效拖拽功能示例
Dec 21 Javascript
详解vue.js数据传递以及数据分发slot
Jan 20 Javascript
vue单页面应用打开新窗口显示跳转页面的实例
Sep 21 Javascript
JavaScript原型链中函数和对象的理解
Jun 16 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导入csv文件碰到乱码问题的解决方法
2014/02/10 PHP
php数组去重复数据示例
2014/02/25 PHP
PHP 枚举类型的管理与设计知识点总结
2020/02/13 PHP
JavaScript Object的extend是一个常用的功能
2009/12/02 Javascript
JS 自定义函数缺省值的设置方法
2010/05/05 Javascript
jQuery 无限级菜单的简单实例
2014/02/21 Javascript
用js一次改变多个input的readonly属性值的方法
2014/06/11 Javascript
利用jQuery中的ajax分页实现代码
2016/02/25 Javascript
基于React.js实现原生js拖拽效果引发的思考
2016/03/30 Javascript
jquery使用EasyUI Tree异步加载JSON数据(生成树)
2017/02/11 Javascript
jQueryUI Sortable 应用Demo(分享)
2017/09/07 jQuery
一次微信小程序内地图的使用实战记录
2019/09/09 Javascript
JS判断数组四种实现方法详解
2020/06/29 Javascript
python 统计代码行数简单实例
2017/05/04 Python
python print输出延时,让其立刻输出的方法
2019/01/07 Python
详解python 中in 的 用法
2019/12/12 Python
Python time库基本使用方法分析
2019/12/13 Python
Python异步编程之协程任务的调度操作实例分析
2020/02/01 Python
Django ValuesQuerySet转json方式
2020/03/16 Python
如何利用python 读取配置文件
2021/01/06 Python
基于pycharm 项目和项目文件命名规则的介绍
2021/01/15 Python
北美领先的牛仔品牌:Buffalo David Bitton
2017/05/22 全球购物
英国鹦鹉店:Parrot Essentials
2018/12/03 全球购物
Claire’s法国:时尚配饰、美容、珠宝、头发
2021/01/16 全球购物
联强国际笔试题面试题
2013/07/10 面试题
毕业生物理教师求职信
2013/10/17 职场文书
小学家长会邀请函
2014/01/23 职场文书
社区端午节活动方案
2014/01/28 职场文书
光学与应用专业毕业生求职信
2014/09/01 职场文书
思想作风建设心得体会
2014/10/22 职场文书
2015年转正工作总结范文
2015/04/02 职场文书
晚会主持人开场白台词
2015/05/28 职场文书
2019经典广告词集锦!
2019/07/02 职场文书
PyMongo 查询数据的实现
2021/06/28 Python
漫画「请问您今天要来点兔子吗?」最新杂志彩页公开
2022/03/24 日漫
vue 数字翻牌器动态加载数据
2022/04/20 Vue.js