请问这样的返回的XML如何解析?急

mousetrapj 2007-10-26 10:29:20
请求后返回的XML:
<root>
<item>
<name1></name1>
<name2></name2>
<info>
<infoname></infoname>
<infovalue></infovalue>
</info>
<info>
<infoname></infoname>
<infovalue><infovalue>
</info>
</item>
<item>
...
</item>
</root>
就是类似一个XML中又嵌入了一个XML,这样的格式如何解析,然后生成表格呢?请各位帮帮忙。急!
...全文
78 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
employees.xml
<?xml version="1.0" encoding="gb2312"?>
<employees>
<employee name="J.Doe">
<job>Programmer</job>
<salary>32768</salary>
</employee>
<employee name="A.Baker">
<job>Sales</job>
<salary>70000</salary>
</employee>
<employee name="Big Cheese">
<job>CEO</job>
<salary>100000</salary>
</employee>
</employees>
  • 打赏
  • 举报
回复
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
<script language="javascript">
function loadXML(handler) {

var url = "employees.xml";

if(document.implementation&&document.implementation.createDocument) {

var xmldoc = document.implementation.createDocument("", "", null);

xmldoc.onload = handler(xmldoc, url);

xmldoc.load(url);

}

else if(window.ActiveXObject) {

var xmldoc = new ActiveXObject("Microsoft.XMLDOM");

xmldoc.onreadystatechange = function() {

if(xmldoc.readyState == 4) handler(xmldoc, url);

}

xmldoc.load(url);
}
}

function makeTable(xmldoc, url) {

var table = document.createElement("table");

table.setAttribute("border","1");

table.setAttribute("width","600");

table.setAttribute("class","tab-content");

document.body.appendChild(table);

var caption = "Employee Data from " + url;

table.createCaption().appendChild(document.createTextNode(caption));

var header = table.createTHead();

var headerrow = header.insertRow(0);

headerrow.insertCell(0).appendChild(document.createTextNode("姓名"));

headerrow.insertCell(1).appendChild(document.createTextNode("职业"));

headerrow.insertCell(2).appendChild(document.createTextNode("工资"));

var employees = xmldoc.getElementsByTagName("employee");

for(var i=0;i<employees.length;i++) {

var e = employees[i];

var name = e.getAttribute("name");

var job = e.getElementsByTagName("job")[0].firstChild.data;

var salary = e.getElementsByTagName("salary")[0].firstChild.data;

var row = table.insertRow(i+1);

row.insertCell(0).appendChild(document.createTextNode(name));

row.insertCell(1).appendChild(document.createTextNode(job));

row.insertCell(2).appendChild(document.createTextNode(salary));

}
}
</script>
<link href="css/style.css" rel="stylesheet" type="text/css">
</head>
<body onLoad="loadXML(makeTable)">
</body>
</html>
xueshan555 2007-10-26
  • 打赏
  • 举报
回复
用XMLDom来接收XML,然后分析里面的节点内容
至于生成表格,那就是表格中套表格了

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧