|
|
响应类型必须设置为:response.setContentType("text/xml;charset=utf-8");
// 创建 XMLHttpRequest 对象var xmlHttp;function loadXMLDoc(url) {xmlHttp=null;if (window.XMLHttpRequest){// code for IE7, Firefox, Mozilla, etc.xmlHttp=new XMLHttpRequest();} else if (window.ActiveXObject){ // code for IE5, IE6 xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); }if (xmlHttp!=null) { xmlHttp.onreadystatechange=handleXmlResponse; xmlHttp.open("GET",url,true); xmlHttp.send(null); } else { alert("Your browser does not support XMLHTTP."); }}// 回调函数function handleXmlResponse() { if (xmlHttp.readyState==4) { if(xmlHttp.status==200){ var xmlDoc = xmlHttp.responseXML; xmlDoc.async=true; if(xmlDoc !== null){ analyse(xmlDoc) } } } } /** * 解析xml生成页面 * analyse * @param {type} xmlDoc */ function analyse(xmlDoc) { // 建立 table var div=document.createElement("div");// div.id="edit";var table = document.createElement("table");table.cellspacing='1';table.cellpadding='2';table.style.textAlign="center";table.className="myTable"; var titleRow = table.insertRow(-1);// titleRow.id="title_name"; // 得到标题 var headTitles = xmlDoc.selectNodes("//headTitle/item"); var total = headTitles.length; for(var i=0; i<total; i++) { var cell=titleRow.insertCell(); cell.innerHTML=headTitles[i].text; cell.className="title"; }// 得到内容 var contents = xmlDoc.selectNodes("//content"); for(var i=0; i<contents.length; i++) { var contentRow = table.insertRow(-1); var timeCell=contentRow.insertCell(); // 时间属性timeCell.innerHTML=contents[i].getAttribute("time");timeCell.className="body"; // 跨列属性 var skip = contents[i].getAttribute("skip"); var items = contents[i].childNodes; if(skip!==null) { var skipCell=contentRow.insertCell(); skipCell.colSpan=skip; } else { for(var j=0; j<items.length; j++) { var itemCell=contentRow.insertCell(); itemCell.className="body"; var item = items[j].childNodes; if (item.length > 0) { var innerTabel = document.createElement("table"); innerTabel.className="myTable"; for(var k=0; k<item.length; k++) { var link=item[k].firstChild.text; var tempStr=item[k].getAttribute("logType")+"_"+item[k].getAttribute("subType")+"_"+item[k].getAttribute("sn"); var innerRow=innerTabel.insertRow(); innerRow.id="panel_"+tempStr; var innerCell=innerRow.insertCell(); innerCell.className="body"; innerCell.innerHTML=item[k].getAttribute("logTime")+"<br />"+item[k].getAttribute("Transactor")+"<br />"+item[k].getAttribute("message"); itemCell.appendChild(innerTabel);} } } } }div.appendChild(table);document.body.appendChild(div);// 调整页面mm_iframeAutoFit(); } |
|