<?xml version="1.0" encoding="UTF-8"?>
<userInfo> <zhangsan>
<age>10</age>
<height>100</height>
</zhangsan> <李四>
<年龄>20</年龄>
<身高>200</身高>
</李四> <王五>
<年龄>30</年龄>
<身高>300</身高>
</王五></userInfo>
--------------------------------------------
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html> <head>
<script>
var ajaxObject;
function createAjax()
{
if (window.ActiveXObject)
{
ajaxObject = new ActiveXObject("Microsoft.XMLHTTP");
}
else if(window.XMLHttpRequest)
{
ajaxObject = new XMLHttpRequest();
}
}function showText()
{
createAjax();
ajaxObject.onreadystatechange = backCall;
ajaxObject.open("GET", "userInfo.xml", true);
ajaxObject.send(null);
}function backCall()
{
if (ajaxObject.readyState == 4)
{
if (ajaxObject.status == 200)
{
var infoString = "";
var xmlString = ajaxObject.responseXML;
var zhangsan = xmlString.getElementsByTagName("李四")[0];
for(var i = 0; i < zhangsan.childNodes.length;
i ++ )
{
infoString = infoString + zhangsan.childNodes[i].nodeName + " " + zhangsan.childNodes[i].firstChild.nodeValue + "\n";
}
alert(infoString);
}
}
}
</script>
</head> <body>
<input type="button" onclick="showText()" value="click me!"
name="button" />
</body></html>出错啊,帮忙看一下啊
<userInfo> <zhangsan>
<age>10</age>
<height>100</height>
</zhangsan> <李四>
<年龄>20</年龄>
<身高>200</身高>
</李四> <王五>
<年龄>30</年龄>
<身高>300</身高>
</王五></userInfo>
--------------------------------------------
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html> <head>
<script>
var ajaxObject;
function createAjax()
{
if (window.ActiveXObject)
{
ajaxObject = new ActiveXObject("Microsoft.XMLHTTP");
}
else if(window.XMLHttpRequest)
{
ajaxObject = new XMLHttpRequest();
}
}function showText()
{
createAjax();
ajaxObject.onreadystatechange = backCall;
ajaxObject.open("GET", "userInfo.xml", true);
ajaxObject.send(null);
}function backCall()
{
if (ajaxObject.readyState == 4)
{
if (ajaxObject.status == 200)
{
var infoString = "";
var xmlString = ajaxObject.responseXML;
var zhangsan = xmlString.getElementsByTagName("李四")[0];
for(var i = 0; i < zhangsan.childNodes.length;
i ++ )
{
infoString = infoString + zhangsan.childNodes[i].nodeName + " " + zhangsan.childNodes[i].firstChild.nodeValue + "\n";
}
alert(infoString);
}
}
}
</script>
</head> <body>
<input type="button" onclick="showText()" value="click me!"
name="button" />
</body></html>出错啊,帮忙看一下啊
LZ你要在HTML里加上<meta content="text/html; charset=UTF-8">
这样xmlString.getElementsByTagName("李四")就正常了错误二
infoString = infoString + zhangsan.childNodes[i].nodeName + " " + zhangsan.childNodes[i].firstChild.nodeValue + "\n";需要重写
因为xml的DOM树里存在空白的节点需要过滤掉,可以根据nodeType判断