array(2) { ["docs"]=> array(0) { } ["count"]=> int(0) } 111string(0) "" int(1) int(10) int(70) int(8640000) string(13) "likecs_art_db" array(1) { ["query"]=> array(1) { ["match_all"]=> object(stdClass)#29 (0) { } } } array(1) { ["createtime.keyword"]=> array(1) { ["order"]=> string(4) "desc" } } int(10) int(0) int(8640000) array(2) { ["docs"]=> array(0) { } ["count"]=> int(0) } 【XML DOM】解析XML Dom - 爱码网

现在浏览器都内建了用于读取和操作XML的XML解释器。

解释器把XML读入内存,并把它转换为可被js访问的XML DOM对象。

解析器都含遍历XML树,访问,插入及删除节点的函数。

本节主要讲解如何创建可在IE及其他浏览器中运行的脚本。


1,微软的解析器加载XML方法

xmlDoc=new ActiveXObject("Microsoft.XMLDOM");//创建空的XML文档对象
xmlDoc.async="false";//关闭异步加载,这样可确保在文档完整加载之前,解析器不会继续执行脚本
xmlDoc.load("book.xml");//知解析器加载的文件名
xmlDoc.loadXML(txt);//加载名为txt的字符串

2,FireFox及其他浏览器加载的方法

xmlDoc=document.implementation.createDocument("","",null);//新建一个空XML文档
xmlDoc.async="false";
xmlDoc.load(
"books.xml");
parser=new DOMparser();
xmlDoc=parser.parseFromString(txt,"text/xml");//加载名为txt的字符串

3,实例演示:一个跨浏览器的例子

 

代码
<html>
<body>
<script type="text/javascript">
text
="<bookstore>"
text
=text+"<book>";
text
=text+"<title>Harry Potter</title>";
text
=text+"<author>J K. Rowling</author>";
text
=text+"<year>2005</year>";
text
=text+"</book>";
text
=text+"</bookstore>";

try //IE浏览器
{
xmlDoc
=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async
="false";
xmlDoc.loadXML(text);
}
catch(e)
{
try //其他浏览器
{
parser
=new DOMParser();
xmlDoc
=parser.parseFromString(text,"text/xml");
}
catch(e) {alert(e.message)}
}
document.write(
"xmlDoc is loaded, ready for use");
</script>
</body>
</html>

 

 

参考:w3school,希望本文给您带来帮助。

本小节完,待续……

相关文章: