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


Posted in Javascript onSeptember 23, 2013

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; 
} 
} 
} 
} 
}
Javascript 相关文章推荐
javascript编程起步(第四课)
Jan 10 Javascript
JavaScript语句可以不以;结尾的烦恼
Mar 08 Javascript
jquery实现的导航固定效果
Apr 28 Javascript
基于jquery和svg实现超炫酷的动画特效
Dec 09 Javascript
JavaScript中的Math.LN2属性用法详解
Jun 12 Javascript
jquery中object对象循环遍历的方法
Dec 18 Javascript
从零学习node.js之利用express搭建简易论坛(七)
Feb 25 Javascript
jQuery实现html双向绑定功能示例
Oct 09 jQuery
Vue自定义全局Toast和Loading的实例详解
Apr 18 Javascript
微信小程序云开发如何实现数据库自动备份实现
Aug 16 Javascript
jquery实现垂直手风琴菜单
Mar 04 jQuery
vant-ui AddressEdit地址编辑和van-area的用法说明
Nov 03 Javascript
js如何取消事件冒泡
Sep 23 #Javascript
页面载入结束自动调用js函数示例
Sep 23 #Javascript
往光标所在位置插入值的js代码
Sep 22 #Javascript
jQuery插件实现表格隔行换色且感应鼠标高亮行变色
Sep 22 #Javascript
jquery设置元素的readonly和disabled的写法
Sep 22 #Javascript
JS 毫秒转时间示例代码
Sep 22 #Javascript
javascript获取设置div的高度和宽度兼容任何浏览器
Sep 22 #Javascript
You might like
PHP处理excel cvs表格的方法实例介绍
2013/05/13 PHP
php自定义分页类完整实例
2015/12/25 PHP
Laravel中Facade的加载过程与原理详解
2017/09/22 PHP
解决Laravel 不能创建 migration 的问题
2019/10/09 PHP
js原生appendChild的bug解决心得分享
2013/07/01 Javascript
做好七件事帮你提升jQuery的性能
2014/02/06 Javascript
javascript制作sql转换为stringBuffer的小工具
2015/04/03 Javascript
浅谈JS中String()与 .toString()的区别
2016/10/20 Javascript
JS把字符串格式的时间转换成几秒前、几分钟前、几小时前、几天前等格式
2019/07/10 Javascript
关于JavaScript数组去重的一些理解汇总
2020/09/10 Javascript
python每次处理固定个数的字符的方法总结
2013/01/29 Python
Python中列表、字典、元组、集合数据结构整理
2014/11/20 Python
利用Hyperic调用Python实现进程守护
2018/01/02 Python
python实现数据导出到excel的示例--普通格式
2018/05/03 Python
对命令行模式与python交互模式介绍
2018/05/12 Python
Django 多语言教程的实现(i18n)
2018/07/07 Python
Flask框架配置与调试操作示例
2018/07/23 Python
python matplotlib实现双Y轴的实例
2019/02/12 Python
python Tcp协议发送和接收信息的例子
2019/07/22 Python
python修改FTP服务器上的文件名
2019/09/11 Python
在django中自定义字段Field详解
2019/12/03 Python
解决django的template中如果无法引用MEDIA_URL问题
2020/04/07 Python
法国综合购物网站:RueDuCommerce
2016/09/12 全球购物
小学校园活动策划
2014/01/30 职场文书
毕业生就业推荐表自我鉴定
2014/03/20 职场文书
卖车协议书
2014/04/21 职场文书
经贸专业毕业生求职信范文
2014/05/01 职场文书
股东授权委托书范文
2014/09/13 职场文书
2014年销售工作总结
2014/12/01 职场文书
2015年元宵节活动总结
2015/02/06 职场文书
2015年质量月活动总结报告
2015/03/27 职场文书
幼儿园教师安全责任书
2015/05/08 职场文书
党员转正介绍人意见
2015/06/03 职场文书
篮球赛新闻稿
2015/07/17 职场文书
详解Redis基本命令与使用场景
2021/06/01 Redis
教你使用Ubuntu搭建DNS服务器
2022/09/23 Servers