JS查询XML问题。。。 xml格式不太方便TypeId和Slot可以放在属性里也就是getElementsByTagName,firstChild,nextSibling,parentNode,children几个方法套用一下 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 2.xml<?xml version="1.0" encoding="utf-8"?><ShipSlotInfo> <SlotType> <TypeId>143101</TypeId> <ShipSlot> <Slot>0</Slot> <AssemblyTypeId>111111 </AssemblyTypeId> <AssemblyTypeId>222222 </AssemblyTypeId> </ShipSlot> <ShipSlot> <Slot>1</Slot> <AssemblyTypeId>333333</AssemblyTypeId> <AssemblyTypeId>44444</AssemblyTypeId> </ShipSlot> </SlotType> </ShipSlotInfo> <html><head><script>var xmlDoc = new ActiveXObject("Msxml2.DOMDocument"); xmlDoc.load("2.xml");var str = getByVal("143101","0");alert(str);//111111,222222function getByVal(TypeId,Slot){ var typeId=xmlDoc.selectSingleNode("ShipSlotInfo/SlotType/TypeId[text()='"+TypeId+"']"); if(typeId!=null) { var slot = typeId.parentNode.selectSingleNode("ShipSlot/Slot[text()='"+Slot+"']"); if(slot!=null) { var asm = slot.parentNode.getElementsByTagName("AssemblyTypeId"); var arr = []; for(var i=0;i<asm.length;i++) { arr.push(asm[i].text); } return arr.join(","); } } return "";}</script></head><body></body></html> 主要就是xpath语法,多看看就知道了 多谢CutBug的帮助,非常感谢!我该认真看看书了 如何获得ID 用过jqGrid这个插件的前辈们进 js解密!!!! 发一段代码..大家把我找找错误 JQuery访问json数据,大牛上 firefox下无法用childNodes[0].nodeValue正常读取节点的值 怎样实现像CSDN这样,在鼠标在单元格上时,背景颜色实现渐变 如何在同一子窗口里打开window.open打开的窗口 JS调用Activex控件带输出参数方法的问题 ~ 【分享】好东西不敢自己独享~ 一个简单的问题???????????
<?xml version="1.0" encoding="utf-8"?>
<ShipSlotInfo>
<SlotType>
<TypeId>143101</TypeId>
<ShipSlot>
<Slot>0</Slot>
<AssemblyTypeId>111111 </AssemblyTypeId>
<AssemblyTypeId>222222 </AssemblyTypeId>
</ShipSlot>
<ShipSlot>
<Slot>1</Slot>
<AssemblyTypeId>333333</AssemblyTypeId>
<AssemblyTypeId>44444</AssemblyTypeId>
</ShipSlot>
</SlotType>
</ShipSlotInfo> <html>
<head>
<script>
var xmlDoc = new ActiveXObject("Msxml2.DOMDocument");
xmlDoc.load("2.xml");
var str = getByVal("143101","0");
alert(str);//111111,222222
function getByVal(TypeId,Slot)
{
var typeId=xmlDoc.selectSingleNode("ShipSlotInfo/SlotType/TypeId[text()='"+TypeId+"']");
if(typeId!=null)
{
var slot = typeId.parentNode.selectSingleNode("ShipSlot/Slot[text()='"+Slot+"']");
if(slot!=null)
{
var asm = slot.parentNode.getElementsByTagName("AssemblyTypeId");
var arr = [];
for(var i=0;i<asm.length;i++)
{
arr.push(asm[i].text);
}
return arr.join(",");
}
}
return "";
}
</script>
</head>
<body></body>
</html>