通過AJAX的JS、JQuery兩種方式解析XML示例介紹
更新時間:2013年09月23日 09:18:01 作者:
解析XML的方法有很多,在本文要為大家介紹下是使用AJAX的JS、JQuery兩種方式來進行解析,具體實現(xiàn)如下,感興趣的朋友可以參考下
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"節(jié)點
$(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> 的狀態(tài)為:<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"節(jié)點
$(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("服務(wù)器繁忙", 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> 的狀態(tài)為:<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;
}
}
}
}
}
復(fù)制代碼 代碼如下:
$.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"節(jié)點
$(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> 的狀態(tài)為:<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"節(jié)點
$(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("服務(wù)器繁忙", 2);
}
});
JS版
復(fù)制代碼 代碼如下:
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> 的狀態(tài)為:<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;
}
}
}
}
}
您可能感興趣的文章:
- AJAX使用post發(fā)送數(shù)據(jù)xml格式接受數(shù)據(jù)
- 用Ajax讀取xml文件的簡單例子
- jQuery+ajax讀取并解析XML文件的方法
- Jquery Ajax學(xué)習(xí)實例 向頁面發(fā)出請求,返回XML格式數(shù)據(jù)
- javascript解析ajax返回的xml和json格式數(shù)據(jù)實例詳解
- jquery $.ajax()取xml數(shù)據(jù)的小問題解決方法
- JS通過ajax動態(tài)讀取xml文件內(nèi)容的方法
- 用Ajax讀取XML格式的數(shù)據(jù)
- JS使用ajax從xml文件動態(tài)獲取數(shù)據(jù)顯示的方法
- 用JQuery 實現(xiàn)AJAX加載XML并解析的腳本
- Ajax對xml信息的接收和處理操作實例分析
相關(guān)文章
Bootstrap富文本組件wysiwyg數(shù)據(jù)保存到mysql的方法
這篇文章主要為大家詳細介紹了Bootstrap富文本組件wysiwyg數(shù)據(jù)保存到mysql的方法,感興趣的小伙伴們可以參考一下2016-05-05js獲取當(dāng)前日期昨天、今天、明天日期的不同方法總結(jié)
JS中處理日期時間常用Date對象,下面這篇文章主要給大家介紹了關(guān)于利用js獲取當(dāng)前日期昨天、今天、明天日期的不同方法,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2023-11-11javascript實現(xiàn)table單元格點擊展開隱藏效果(實例代碼)
這篇文章主要介紹了javascript實現(xiàn)table單元格點擊展開隱藏效果的實例代碼講解,代碼簡單易懂,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-04-04JavaScript實現(xiàn)點擊復(fù)制功能具體代碼(JS訪問剪貼板相關(guān))
這篇文章主要給大家介紹了關(guān)于JavaScript實現(xiàn)點擊復(fù)制功能(JS訪問剪貼板相關(guān))的相關(guān)資料,復(fù)制功能指的是將一個文本或者圖片等資源從一個位置通過復(fù)制的方式再次拷貝到另一個位置,需要的朋友可以參考下2023-10-10JS實現(xiàn)集合的交集、補集、差集、去重運算示例【ES5與ES6寫法】
這篇文章主要介紹了JS實現(xiàn)集合的交集、補集、差集、去重運算,結(jié)合實例形式分析了ES5與ES6語法環(huán)境下的集合常見運算操作技巧,需要的朋友可以參考下2019-02-02JavaScript判斷是否為數(shù)組的3種方法及效率比較
這篇文章主要介紹了JavaScript判斷是否為數(shù)組的3種方法及效率比較,本文直接給出運行效果和實現(xiàn)代碼,需要的朋友可以參考下2015-04-04JS中用childNodes獲取子元素換行會產(chǎn)生一個子元素
本文給大家分享JS中用childNodes獲取子元素換行會產(chǎn)生一個子元素的實例代碼,需要的朋友參考下2016-12-12