用Ajax读取XML格式的数据,只需要读取XMLHttpRequest对象返回的responseXML属性即可。
Html页面代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
var xmlHttp;
function createXMLHttpRequest()
{
if(window.ActiveXObject)
{
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else if(window.XMLHttpRequest)
{
xmlHttp = new XMLHttpRequest();
}
}
function startRequest()
{
createXMLHttpRequest();
try
{
xmlHttp.onreadystatechange = handleStateChange;
xmlHttp.open("GET", "data.xml", true);
xmlHttp.send(null);
}
catch(exception)
{
alert("您要访问的资源不存在!");
}
}
function handleStateChange()
{
if(xmlHttp.readyState == 4)
{
if (xmlHttp.status == 200 || xmlHttp.status == 0)
{
// 取得XML的DOM对象
var xmlDOM = xmlHttp.responseXML;
// 取得XML文档的根
var root = xmlDOM.documentElement;
try
{
// 取得<info>结果
var info = root.getElementsByTagName('info');
// 显示返回结果
alert("输出data.xml文件中的内容: " + info[0].firstChild.data);
}
catch (exception)
{ }
}
}
}
</script>
</head>
<body>
<div> <input type="button" value="输出data.xml文件中的内容" onclick="startRequest();" /> </div>
</body>
</html>
data.xml文件代码如下:
<?xml version="1.0" encoding="utf-8" ?>
<root>
<info>hello world!</info>
</root>
最终运行效果如下图: