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 相关文章推荐
javascript onkeydown,onkeyup,onkeypress,onclick,ondblclick
Feb 04 Javascript
JavaScript中的object转换函数toString()与valueOf()介绍
Dec 31 Javascript
javascript实现瀑布流自适应遇到的问题及解决方案
Jan 28 Javascript
js无法获取到html标签的属性的解决方法
Jul 26 Javascript
JS中使用DOM来控制HTML元素
Jul 31 Javascript
原生js实现弹出层登录拖拽功能
Dec 05 Javascript
vue实现表格数据的增删改查
Jul 10 Javascript
JavaScript基于面向对象实现的猜拳游戏
Jan 03 Javascript
微信小程序wx.getImageInfo()如何获取图片信息
Jan 26 Javascript
AngularJS上传文件的示例代码
Nov 10 Javascript
基于Vue-Cli 打包自动生成/抽离相关配置文件的实现方法
Dec 09 Javascript
微信小程序tab切换可滑动切换导航栏跟随滚动实现代码
Sep 04 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_SELF的安全问题
2009/09/05 PHP
IIS下PHP的三种配置方式对比
2014/11/20 PHP
php利用cookie实现自动登录的方法
2014/12/10 PHP
php实现记事本案例
2020/10/20 PHP
用JavaScript实现UrlEncode和UrlDecode的脚本代码
2008/07/23 Javascript
基于jQuery的ajax功能实现web service的json转化
2009/08/29 Javascript
使用JavaScript修改浏览器URL地址栏的实现代码
2013/10/21 Javascript
js获取当前地址 JS获取当前URL的示例代码
2014/02/26 Javascript
百度地图自定义控件分享
2015/03/04 Javascript
微信小程序 数据绑定详解及实例
2016/10/25 Javascript
bootstrap table 多选框分页保留示例代码
2017/03/08 Javascript
简单实现jQuery手风琴效果
2017/08/18 jQuery
JS 中使用Promise 实现红绿灯实例代码(demo)
2017/10/20 Javascript
Bootstrap Table 搜索框和查询功能
2017/11/30 Javascript
ES6入门教程之Array.from()方法
2019/03/23 Javascript
vue.js路由mode配置之去掉url上默认的#方法
2019/11/01 Javascript
jQuery实现图片切换效果
2020/10/19 jQuery
[01:45]2014DOTA2 TI预选赛预选赛 战前探营!
2014/05/21 DOTA
[06:57]DOTA2-DPC中国联赛 正赛 Ehome vs PSG.LGD 选手采访
2021/03/11 DOTA
Python 使用os.remove删除文件夹时报错的解决方法
2017/01/13 Python
使用Python的turtle模块画图的方法
2017/11/15 Python
Python使用logging模块实现打印log到指定文件的方法
2018/09/05 Python
Python3 合并二叉树的实现
2019/09/30 Python
Python多进程编程multiprocessing代码实例
2020/03/12 Python
Python Selenium安装及环境配置的实现
2020/03/17 Python
tensorflow图像裁剪进行数据增强操作
2020/06/30 Python
基于python实现音乐播放器代码实例
2020/07/01 Python
Keras 中Leaky ReLU等高级激活函数的用法
2020/07/05 Python
迪卡侬比利时官网:Decathlon比利时
2019/12/28 全球购物
什么是托管函数?托管函数有什么用?
2014/06/15 面试题
小学安全教育材料
2014/02/17 职场文书
2014财务人员自我评价范文
2014/09/21 职场文书
2014年六五普法工作总结
2014/11/25 职场文书
2015年人力资源部工作总结
2015/04/30 职场文书
Python实现老照片修复之上色小技巧
2021/10/16 Python
PostgreSQL并行计算算法及参数强制并行度设置方法
2022/04/06 PostgreSQL