本文目录一览:
JavaScript如何解析xml
<?xml version="1.0"?>
<root>
<books id="list">
<item id='js'>
<name>javascript教程</name>
<price>50</price>
</item>
<item id='java'>
<name>java教程</name>
<price>70</price>
</item>
</books>
</root>
var dom = new ActiveXObject('Microsoft.XMLDOM'); // 得到XML操作对象
// 加载 xml 有两种方法
// 方法一
// dom.load('XML文件的路径');
// 方法二
dom.loadXML('XML文件的内容'); // 此处就是上面XML的内容
// 比如我要得到上面XML文件中所有书的列表
var bookList = dom.selectNodeList('root/books/item'); // 这里采用 xPath,自己去了解吧
// 得到的 bookList 值为
// <item>
// <name>javascript教程</name>
// <price>50</price>
// </item>
// <item>
// <name>java教程</name>
// <price>70</price>
// </item>
// 比如我要选择 javascript 教程
var js = dom.selectSingleNode('root/books/item[id="js"]'); // xPath
// 得到的 js 值为
// <item>
// <name>javascript教程</name>
// <price>50</price>
// </item>
当然还有好多方法,好多东西,这里就不写太多了,自己去慢慢研究吧。
上面只是用了 xpath 办法,毕竟这个检索的效率高,速度快,当然还可以一级一级节点往下遍历。
一楼说的 ajax 也可以操作 xml,二楼说的 getElementsByTagName('tag')
这也是一个检索XML的方法,请自行研究。
js的xml文件是什么
刚学习javascript,写一个小游戏做练习,现在想要做一个配置文件,练习一下XML的操作…… 进入正题: 如下xml文件:profile.xml
<?xml version="1.0"?>
<configuration>
<row>Hello</row>
<col>word!</col>
</configuration>
在google搜索结果中出现频率比较高的一段代码: javascript文件:test.js
var doc = loadXmlFile("profile.xml");
alert(doc.text);
function loadXmlFile(xmlFile) {
var xmlDom = null;
if (window.ActiveXObject) {
xmlDom = new ActiveXObject("Microsoft.XMLDOM");
//xmlDom.loadXML(xmlFile);//如果用的是XML字符串
xmlDom.load(xmlFile); //如果用的是xml文件。
} else if (document.implementation && document.implementation.createDocument) {
var xmlhttp = new window.XMLHttpRequest();
xmlhttp.open("GET", xmlFile, false);
xmlhttp.send(null);
xmlDom = xmlhttp.responseXML;
} else {
xmlDom = null;
}
return xmlDom;
}
这个方法在IE下能正常输出“hello word”,IE9、以及IE9的IE7、IE8的兼容模式都正常。
但是在firefox下输出的是“undefined”
而Chrome下则无输出,提示 xmlhttp.send(null);
这行 Uncaught Error: NETWORK_ERR: XMLHttpRequest Exception 101
还有一种方法是用JQuery
$.get('profile.xml', function(xml) {
alert($(xml).text());
});
在Chrome下只弹出一个空警告框……
javascript 与xml是什么关系?
xml是一种文档组织标准 javascript是可以在客户端操作元素的脚本语言,可以操作xml文件。