首页 > 技术文章 > XML与JavaScript知识

fengxiongZz 2017-02-24 12:18 原文

  什么是XMLHttpRequest 对象?

答:XMLHttpRequest 对象用于在后台与服务器交换数据,它是开发者的梦想,因为它能够:1、在不重新加载页面的情况下更新网页;2、在页面已加载后从服务器请求数据;3、在页面已加载后从服务器接收数据;4、在后台向服务器发送数据。

 

  什么是XML解析器?

答:XML 解析器把 XML 文档转换为 XML DOM 对象 - 可通过 JavaScript 操作的对象。1、解析XML文档到XML DOM对象中:

 

  2、解析XML字符串到XML DOM对象中:

 

  什么是XML DOM?

答:DOM(Document Object Model 文档对象模型)定义了访问和操作文档的标准方法。XML DOM(XML Document Object Model)则是定义了访问和操作 XML 文档的标准方法,把XML文档作为树结构来查看,所有元素可以通过 DOM 树来访问。可以修改或删除它们的内容,并创建新的元素。元素,它们的文本,以及它们的属性,都被认为是节点。

  1、加载一个XML文件-跨浏览器实例:

<html>
< body>
< h1>W3Schools Internal Note</h1>
< div>
< b>To:</b> <span id="to"></span><br />
< b>From:</b> <span id="from"></span><br />
< b>Message:</b> <span id="message"></span>
< /div>

< script>
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","note.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;

document.getElementById("to").innerHTML=
xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue;
document.getElementById("from").innerHTML=
xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;
document.getElementById("message").innerHTML=
xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue;
< /script>

< /body>
< /html>

 

附:note.xml

<?xml version="1.0" encoding="ISO-8859-1"?>

<!-- Edited by XMLSpy® -->

-<note>

<to>Tove</to>

<from>Jani</from>

<heading>Reminder</heading>

<body>Don't forget me this weekend!</body>

</note>

 

2、加载一个XML字符串-跨浏览器实例:

<html>
< body>
< h1>W3Schools Internal Note</h1>
< div>
< b>To:</b> <span id="to"></span><br />
< b>From:</b> <span id="from"></span><br />
< b>Message:</b> <span id="message"></span>
< /div>

< script>
txt="<note>";
txt=txt+"<to>Tove</to>";
txt=txt+"<from>Jani</from>";
txt=txt+"<heading>Reminder</heading>";
txt=txt+"<body>Don't forget me this weekend!</body>";
txt=txt+"</note>";

if (window.DOMParser)
{
parser=new DOMParser();
xmlDoc=parser.parseFromString(txt,"text/xml");
}
else // Internet Explorer
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.loadXML(txt);
}

document.getElementById("to").innerHTML=
xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue;
document.getElementById("from").innerHTML=
xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;
document.getElementById("message").innerHTML=
xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue;
< /script>
< /body>
< /html> 

 

  如何在HTML页面中显示XML数据?

答:点击链接进行查看http://www.runoob.com/xml/xml-to-html.html  

 

  XML应用程序示例

链接:http://www.runoob.com/xml/xml-applications.html

推荐阅读