各位好人.谁有.javascript解吸xml最简单的例子.小弟急求~ 各位好人.谁有.javascript解吸xml最简单的例子.小弟急求~ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 L@_@K<?xml version="1.0" encoding="utf-8"?><Order> <Account>9900234</Account> <Item id="1"> <SKU>1234</SKU> <PricePer>5.95</PricePer> <Quantity>100</Quantity> <Subtotal>595.00</Subtotal> <Description>Super Widget Clamp</Description> </Item> <Item id="2"> <SKU>6234</SKU> <PricePer>22.00</PricePer> <Quantity>10</Quantity> <Subtotal>220.00</Subtotal> <Description>Mighty Foobar Flange</Description> </Item> <Item id="3"> <SKU>9982</SKU> <PricePer>2.50</PricePer> <Quantity>1000</Quantity> <Subtotal>2500.00</Subtotal> <Description>Deluxe Doohickie</Description> </Item> <Item id="4"> <SKU>3256</SKU> <PricePer>389.00</PricePer> <Quantity>1</Quantity> <Subtotal>389.00</Subtotal> <Description>Muckalucket Bucket</Description> </Item> <NumberItems>1111</NumberItems> <Total>3704.00</Total> <OrderDate>07/07/2002</OrderDate> <OrderNumber>8876</OrderNumber></Order><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head> <title>jsLoadXml.html</title> <meta name="generator" content="editplus" /> <meta name="author" content="Gao YiXiang" /> <meta name="email" content="[email protected]" /> <meta name="keywords" content="javascript dhtml dom" /> <meta name="description" content="I love web development." /> <script language="JavaScript"> <!--/* * 创建 XmlDom 对象实例。 */function createXmlDom(){ var xmlVersions = new Array("MSXML2.DOMDocument.5.0", "MSXML2.DOMDocument.4.0", "MSXML2.DOMDocument.3.0", "MSXML2.DOMDocument", "Microsoft.XmlDom"); for (var i=0; i<xmlVersions.length; i++) { try { var oXmlDom = new ActiveXObject(xmlVersions[i]); return oXmlDom; } catch (e) { //alert(e.message); } } throw new Error("当前系统未安装 MSXML!");}function getNode(doc, xpath){ var retval = ""; var value = doc.selectSingleNode(xpath); if (value) retval = value.text; return retval;}function fillValues(itemIndex){ document.forms[0].SKU.value = getNode(orderDoc, "/Order/Item[" + itemIndex + "]/SKU"); document.forms[0].Price.value = getNode(orderDoc, "/Order/Item[" + itemIndex + "]/PricePer"); document.forms[0].Quantity.value = getNode(orderDoc, "/Order/Item[" + itemIndex + "]/Quantity"); document.forms[0].Total.value = getNode(orderDoc,"/Order/Item[" + itemIndex + "]/Subtotal"); document.forms[0].Description.value = getNode(orderDoc, "/Order/Item[" + itemIndex + "]/Description");}function getDataNext(){ i++; if (i > items.length) i = 1; fillValues(i);}function getDataPrev(){ i--; if (i < 1) i = items.length; fillValues(i);}var dataSource = "order.xml";var orderDoc = createXmlDom();orderDoc.load(dataSource);// 通过 XPath 方式读取全部订单项!var items = orderDoc.selectNodes("/Order/Item");var i = 0; //--> </script></head><body onload="getDataNext();"> <h2> XML Order Database</h2> <form> <table border="0"> <tr> <td> SKU</td> <td> <input type="text" name="SKU"></td> </tr> <tr> <td> Price</td> <td> <input type="text" name="Price"></td> </tr> <tr> <td> Quantity</td> <td> <input type="text" name="Quantity"></td> </tr> <tr> <td> Total</td> <td> <input type="text" name="Total"></td> </tr> <tr> <td> Description</td> <td> <input type="text" name="Description"></td> </tr> </table> <input type="button" value=" << " onclick="getDataPrev();"> <input type="button" value=" >> " onclick="getDataNext();"> </form></body></html> Microsoft.XMLDOM data.xml<?xml version="1.0" encoding="gb2312"?><employees> <employee name="J.Doe"><job>Programmer</job><salary>32768</salary></employee> <employee name="A.Baker"><job>Sales</job><salary>70000</salary></employee> <employee name="Big Cheese"><job>CEO</job><salary>1000000</salary></employee></employees>test.htm<html><head><title>Employee Data</title><style> tr.hl{ background:#08246B; color:white; } </style> <script>function loadXML(url,handler){ if(document.implementation&&document.implementation.createDocument){ var xmldoc=document.implementation.createDocument("","",null); xmldoc.onload=function(){handler(xmldoc,url);} xmldoc.load(url);}else if(window.ActiveXObject){ var xmldoc=new ActiveXObject("Microsoft.XMLDOM"); xmldoc.onreadystatechange=function(){if(xmldoc.readyState==4)handler(xmldoc,url);} xmldoc.load(url);}}function makeTable(xmldoc,url){var table=document.createElement("table");table.setAttribute("id","tab");table.setAttribute("border","1");table.setAttribute("width","500");document.body.appendChild(table);table.createCaption().appendChild(document.createTextNode("Employee Data from "+url));var header=table.createTHead();var headerrow=header.insertRow(0);headerrow.insertCell(0).appendChild(document.createTextNode("Name"));headerrow.insertCell(0).appendChild(document.createTextNode("Job"));headerrow.insertCell(0).appendChild(document.createTextNode("Salary"));var es=xmldoc.getElementsByTagName("employee");for(var i=0;i<es.length;i++){ var e=es[i]; var name=e.getAttribute("name"); var job=e.getElementsByTagName("job")[0].firstChild.data;//"firstChild.data" is all right var sal=e.getElementsByTagName("salary")[0].firstChild.nodeValue; var row=table.insertRow(i+1); row.insertCell(0).appendChild(document.createTextNode(name)); row.insertCell(1).appendChild(document.createTextNode(job)); row.insertCell(2).appendChild(document.createTextNode(sal));}}var index=0;document.onkeydown=function(e){e=e?e:window.event;var tb=document.getElementById('tab');if(tb==null)return;loseHightLight(tb);switch(e.keyCode){case 38: index--; if(index<0) index=tab.rows.length-1; tb.rows[index].className="hl"; break;case 40: index++; if(index>tab.rows.length-1) index=0; tb.rows[index].className="hl"; break;}}function loseHightLight(tb){for(var i=0;i<tb.rows.length;i++){tb.rows[i].className="";}}</script></head><body onload="loadXML(location.search.substring(1),makeTable)"></body></html> 这个内容少,看看<script type="text/javascript"> function Load() { var xml="<?xml version=\"1.0\" encoding=\"UTF-8\"?>"; xml+="<Song>"; xml+="<Item ID=\"1\">xmlxmlxmlxmlx </Item>"; xml+="<Item ID=\"2\">xmlxmlxmlxmlx </Item>"; xml+="<Item ID=\"3\">xmlxmlxmlxmlx </Item>"; xml+="<Item ID=\"4\">xmlxmlxmlxmlx </Item>"; xml+="</Song>";var result = xml; if(window.ActiveXObject) { xmlDoc = new ActiveXObject("Msxml2.DOMDocument"); xmlDoc.loadXML(result); } else { parser = new DOMParser(); xmlDoc = parser.parseFromString(result,"text/xml"); }//读取属性 var properties = xmlDoc.getElementsByTagName("Item"); //方法一 var ID = properties.item(0).attributes(0).value; //方法二 var ID2 = properties.item(0).getAttribute("ID"); alert(ID);//读取内容 var xmlValue= properties[0].childNodes[0].nodeValue; alert(xmlValue); //追加 var node = properties.item(3).previousSibling; //得到父节点 //方法一 var pnode = properties.item(2).parentNode; pnode.appendChild(node); //方法二 //var pnode2 = xmlDoc.getElementsByTagName("Song"); //pnode2[0].appendChild(node); alert(xmlDoc.xml); //删除 pnode.removeChild(node); }</script> ajax上传时参数提交的问题 如何把js获得变量直接显示在html中? apache 伪静态的生存调查 新手求指点,为什么我的浏览器打开后什么都不显示,谁知道哪里写错了 怎么计算JavaScript运行的时间?要可执行代码! applet远程访问servlet时报错! 我的右键菜单总是不能放到最前面,如何解决??急急,在线等待。 ==我的菜单被挡住了== 请教高手:如何实现在论坛里点“展开显示”就可以把图片完全显示出来 请问这题怎么算 关于鼠标的问题 调试javascript的工具
<?xml version="1.0" encoding="utf-8"?>
<Order>
<Account>9900234</Account>
<Item id="1">
<SKU>1234</SKU>
<PricePer>5.95</PricePer>
<Quantity>100</Quantity>
<Subtotal>595.00</Subtotal>
<Description>Super Widget Clamp</Description>
</Item>
<Item id="2">
<SKU>6234</SKU>
<PricePer>22.00</PricePer>
<Quantity>10</Quantity>
<Subtotal>220.00</Subtotal>
<Description>Mighty Foobar Flange</Description>
</Item>
<Item id="3">
<SKU>9982</SKU>
<PricePer>2.50</PricePer>
<Quantity>1000</Quantity>
<Subtotal>2500.00</Subtotal>
<Description>Deluxe Doohickie</Description>
</Item>
<Item id="4">
<SKU>3256</SKU>
<PricePer>389.00</PricePer>
<Quantity>1</Quantity>
<Subtotal>389.00</Subtotal>
<Description>Muckalucket Bucket</Description>
</Item>
<NumberItems>1111</NumberItems>
<Total>3704.00</Total>
<OrderDate>07/07/2002</OrderDate>
<OrderNumber>8876</OrderNumber>
</Order><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>jsLoadXml.html</title>
<meta name="generator" content="editplus" />
<meta name="author" content="Gao YiXiang" />
<meta name="email" content="[email protected]" />
<meta name="keywords" content="javascript dhtml dom" />
<meta name="description" content="I love web development." />
<script language="JavaScript">
<!--
/*
* 创建 XmlDom 对象实例。
*/
function createXmlDom()
{
var xmlVersions = new Array("MSXML2.DOMDocument.5.0", "MSXML2.DOMDocument.4.0",
"MSXML2.DOMDocument.3.0", "MSXML2.DOMDocument", "Microsoft.XmlDom"); for (var i=0; i<xmlVersions.length; i++)
{
try
{
var oXmlDom = new ActiveXObject(xmlVersions[i]); return oXmlDom;
}
catch (e)
{
//alert(e.message);
}
} throw new Error("当前系统未安装 MSXML!");
}
function getNode(doc, xpath)
{
var retval = ""; var value = doc.selectSingleNode(xpath); if (value) retval = value.text; return retval;
}function fillValues(itemIndex)
{
document.forms[0].SKU.value = getNode(orderDoc, "/Order/Item[" + itemIndex + "]/SKU");
document.forms[0].Price.value = getNode(orderDoc, "/Order/Item[" + itemIndex + "]/PricePer");
document.forms[0].Quantity.value = getNode(orderDoc, "/Order/Item[" + itemIndex + "]/Quantity");
document.forms[0].Total.value = getNode(orderDoc,"/Order/Item[" + itemIndex + "]/Subtotal");
document.forms[0].Description.value = getNode(orderDoc, "/Order/Item[" + itemIndex + "]/Description");
}
function getDataNext()
{
i++; if (i > items.length) i = 1; fillValues(i);
}function getDataPrev()
{
i--; if (i < 1) i = items.length; fillValues(i);
}var dataSource = "order.xml";var orderDoc = createXmlDom();orderDoc.load(dataSource);// 通过 XPath 方式读取全部订单项!
var items = orderDoc.selectNodes("/Order/Item");var i = 0;
//-->
</script>
</head>
<body onload="getDataNext();">
<h2>
XML Order Database</h2>
<form>
<table border="0">
<tr>
<td>
SKU</td>
<td>
<input type="text" name="SKU"></td>
</tr>
<tr>
<td>
Price</td>
<td>
<input type="text" name="Price"></td>
</tr>
<tr>
<td>
Quantity</td>
<td>
<input type="text" name="Quantity"></td>
</tr>
<tr>
<td>
Total</td>
<td>
<input type="text" name="Total"></td>
</tr>
<tr>
<td>
Description</td>
<td>
<input type="text" name="Description"></td>
</tr>
</table>
<input type="button" value=" << " onclick="getDataPrev();">
<input type="button" value=" >> " onclick="getDataNext();">
</form>
</body>
</html>
<?xml version="1.0" encoding="gb2312"?>
<employees>
<employee name="J.Doe"><job>Programmer</job><salary>32768</salary></employee>
<employee name="A.Baker"><job>Sales</job><salary>70000</salary></employee>
<employee name="Big Cheese"><job>CEO</job><salary>1000000</salary></employee>
</employees>test.htm
<html>
<head>
<title>Employee Data</title>
<style>
tr.hl{
background:#08246B;
color:white;
}
</style>
<script>
function loadXML(url,handler)
{
if(document.implementation&&document.implementation.createDocument)
{
var xmldoc=document.implementation.createDocument("","",null);
xmldoc.onload=function(){handler(xmldoc,url);}
xmldoc.load(url);
}
else if(window.ActiveXObject)
{
var xmldoc=new ActiveXObject("Microsoft.XMLDOM");
xmldoc.onreadystatechange=function(){if(xmldoc.readyState==4)handler(xmldoc,url);}
xmldoc.load(url);
}
}
function makeTable(xmldoc,url)
{
var table=document.createElement("table");
table.setAttribute("id","tab");
table.setAttribute("border","1");
table.setAttribute("width","500");
document.body.appendChild(table);
table.createCaption().appendChild(document.createTextNode("Employee Data from "+url));
var header=table.createTHead();
var headerrow=header.insertRow(0);
headerrow.insertCell(0).appendChild(document.createTextNode("Name"));
headerrow.insertCell(0).appendChild(document.createTextNode("Job"));
headerrow.insertCell(0).appendChild(document.createTextNode("Salary"));
var es=xmldoc.getElementsByTagName("employee");
for(var i=0;i<es.length;i++)
{
var e=es[i];
var name=e.getAttribute("name");
var job=e.getElementsByTagName("job")[0].firstChild.data;//"firstChild.data" is all right
var sal=e.getElementsByTagName("salary")[0].firstChild.nodeValue;
var row=table.insertRow(i+1);
row.insertCell(0).appendChild(document.createTextNode(name));
row.insertCell(1).appendChild(document.createTextNode(job));
row.insertCell(2).appendChild(document.createTextNode(sal));
}
}var index=0;
document.onkeydown=function(e)
{
e=e?e:window.event;
var tb=document.getElementById('tab');
if(tb==null)return;
loseHightLight(tb);
switch(e.keyCode)
{
case 38:
index--;
if(index<0)
index=tab.rows.length-1;
tb.rows[index].className="hl";
break;
case 40:
index++;
if(index>tab.rows.length-1)
index=0;
tb.rows[index].className="hl";
break;
}
}
function loseHightLight(tb)
{
for(var i=0;i<tb.rows.length;i++)
{tb.rows[i].className="";}
}
</script>
</head>
<body onload="loadXML(location.search.substring(1),makeTable)">
</body></html>
<script type="text/javascript">
function Load()
{
var xml="<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
xml+="<Song>";
xml+="<Item ID=\"1\">xmlxmlxmlxmlx </Item>";
xml+="<Item ID=\"2\">xmlxmlxmlxmlx </Item>";
xml+="<Item ID=\"3\">xmlxmlxmlxmlx </Item>";
xml+="<Item ID=\"4\">xmlxmlxmlxmlx </Item>";
xml+="</Song>";var result = xml; if(window.ActiveXObject)
{
xmlDoc = new ActiveXObject("Msxml2.DOMDocument");
xmlDoc.loadXML(result);
}
else
{
parser = new DOMParser();
xmlDoc = parser.parseFromString(result,"text/xml");
}//读取属性
var properties = xmlDoc.getElementsByTagName("Item");
//方法一
var ID = properties.item(0).attributes(0).value;
//方法二
var ID2 = properties.item(0).getAttribute("ID");
alert(ID);
//读取内容
var xmlValue= properties[0].childNodes[0].nodeValue;
alert(xmlValue);
//追加
var node = properties.item(3).previousSibling;
//得到父节点
//方法一
var pnode = properties.item(2).parentNode;
pnode.appendChild(node);
//方法二
//var pnode2 = xmlDoc.getElementsByTagName("Song");
//pnode2[0].appendChild(node);
alert(xmlDoc.xml);
//删除
pnode.removeChild(node); }
</script>