首页 > 开发 > AJAX > 正文

通过AJAX的JS、JQuery两种方式解析XML示例介绍

2024-09-01 08:32:16
字体:
来源:转载
供稿:网友
解析XML的方法有很多,在本文要为大家介绍下是使用AJAX的JS、JQuery两种方式来进行解析,具体实现如下,感兴趣的朋友可以参考下

JQuery版

复制代码 代码如下:


$.ajax({
url : "order/order_orderDetail.do?params.type=merge",
type : "post",
data : params,
success : function(xml) {
hide();
if(xml == ""){
Dialog.popTip("找不到需要合并的订单", 2);
}else{
var myTable=document.getElementById( "t_product" );
//遍历"ORDER"节点
$(xml).find('ORDER').each(function(){
var id = $(this).find("ORDERID").text();
var status = $(this).find("STATUS").text();

if(status == "1"){
status="未确认";
}else{
status="已确认";
}

var newRow = myTable.insertRow();
var oCell = newRow.insertCell();
oCell.setAttribute("height","25");
oCell.innerHTML=" ";
oCell = newRow.insertCell();
oCell.innerHTML="*<b>订单<span style=/"color:red/">"+id+"</span> 的状态为:<span style=/"color:red/">"+status+"</span></b>,商品情况如下<input type=/"checkbox/" name=/"mOrder/" value="+id+" onclick=/"mergeOrder();/">";
oCell = newRow.insertCell();
oCell.innerHTML=" ";
oCell = newRow.insertCell();
oCell.innerHTML=" ";
//遍历"PRODUCT"节点
$(this).find('PRODUCT').each(function(){
var pid = $(this).find("PRODUCTID").text();
var pname = $(this).find("PRODUCTNAME").text();
var purl = $(this).find("PRODUCTURL").text();
var pprice = $(this).find("PRICE").text();
var pcount = $(this).find("GOODSCOUNT").text();
newRow = myTable.insertRow();
oCell = newRow.insertCell();
oCell.setAttribute("height","25");
oCell.innerHTML=pid;
oCell = newRow.insertCell();
oCell.innerHTML="<a href=/""+purl+"/" target=/"_blank/">"+pname+"</a>";
oCell = newRow.insertCell();
oCell.innerHTML="<img style=/"cursor: pointer; vertical-align: middle/" src=/"./images/-.png/" onclick=/"return plus('p"+pid+"','"+pprice+"')/" /><input style=/"width: 20px; border: 0; text-align: center;/" type=/"text/" id=/"p"+pid+"/" name=/"order.count/" class=/"txt/" value="+pcount+" readonly /><img style=/"cursor: pointer; vertical-align: middle/" src=/"./images/+.png/" onclick=/"return add('p"+pid+"','"+pprice+"')/">"
oCell = newRow.insertCell();
oCell.innerHTML=pprice;
});
});
}
},
error : function() {
hide();
Dialog.popTip("服务器繁忙", 2);
}
});


JS版

复制代码 代码如下:


if(xmlHttp.readyState ==4){
if(xmlHttp.status ==200){
hide();
var xml = xmlHttp.responseXML;
if(xml == null){
Dialog.popTip("找不到需要合并的订单", 2);
}else{
var myTable=document.getElementById("t_product" );
var orders = xml.getElementsByTagName("ORDER");
for(var i=0;i<orders.length;i++){
var order = orders[i];
var id = order.getElementsByTagName("ORDERID")[0].childNodes[0].nodeValue;
var status =order.getElementsByTagName("STATUS")[0].childNodes[0].nodeValue;
alert(status);
if(status == "1"){
status="未确认";
}else{
status="已确认";
}
var newRow = myTable.insertRow();
var oCell = newRow.insertCell();
oCell.setAttribute("height","25");
oCell.innerHTML=" ";
oCell = newRow.insertCell();
oCell.innerHTML="*<b>订单<span style=/"color:red/">"+id+"</span> 的状态为:<span style=/"color:red/">"+status+"</span></b>,商品情况如下<input type=/"checkbox/" name=/"mOrder/" value="+id+" onclick=/"mergeOrder();/">";
oCell = newRow.insertCell();
oCell.innerHTML=" ";
oCell = newRow.insertCell();
oCell.innerHTML=" ";

var products = order.getElementsByTagName("PRODUCT");
for(var i=0;i<orders.length;i++){
var product = products[i];
var pid = product.getElementsByTagName("PRODUCTID")[0].childNodes[0].nodeValue;
var pname = product.getElementsByTagName("PRODUCTNAME")[0].childNodes[0].nodeValue;
var purl = product.getElementsByTagName("PRODUCTURL")[0].childNodes[0].nodeValue;
var pprice = product.getElementsByTagName("PRICE")[0].childNodes[0].nodeValue;
var pcount = product.getElementsByTagName("GOODSCOUNT")[0].childNodes[0].nodeValue;
newRow = myTable.insertRow();
oCell = newRow.insertCell();
oCell.setAttribute("height","25");
oCell.innerHTML=pid;
oCell = newRow.insertCell();
oCell.innerHTML="<a href=/""+purl+"/" target=/"_blank/">"+pname+"</a>";
oCell = newRow.insertCell();
oCell.innerHTML="<img style=/"cursor: pointer; vertical-align: middle/" src=/"./images/-.png/" onclick=/"return plus('p"+pid+"','"+pprice+"')/" /><input style=/"width: 20px; border: 0; text-align: center;/" type=/"text/" id=/"p"+pid+"/" name=/"order.count/" class=/"txt/" value="+pcount+" readonly /><img style=/"cursor: pointer; vertical-align: middle/" src=/"./images/+.png/" onclick=/"return add('p"+pid+"','"+pprice+"')/">"
oCell = newRow.insertCell();
oCell.innerHTML=pprice;
}
}
}
}
}

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表