JavaScript 解析XML
2009-04-25 16:23
155 查看
<html>
<body>
<script language="javascript" type="text/javascript">
//xml字符串
var xmlstring = '<?xml version=/"1.0/"?>/n'
+ '<shoppingcart date=/"14-10-2007/" total=/"123.45/">/n'
+ ' <item code=/"12345/">/n'
+ ' <name>Widget</name>/n'
+ ' <quantity>1</quantity>/n'
+ ' </item>/n'
+ ' <item code=/"54321/">/n'
+ ' <name>Another Widget</name>/n'
+' <quantity>2</quantity>/n'
+ ' </item>/n'
+ '</shoppingcart>';
alert(xmlstring);
try
{
// convert the string to an XML object
// 用于 IE 的代码:
if (window.ActiveXObject)
{
alert("activexobject");
var xmlobject =new ActiveXObject("Microsoft.XMLDOM");
xmlobject.async="false";
xmlobject.loadXML(xmlstring);
}
// 用于 Mozilla, Firefox, Opera, 等浏览器的代码:
else
{
alert("firefox");
var parser=new DOMParser();
var xmlobject =parser.parseFromString(xmlstring,"text/xml");
}
}
catch (e)
{
alert('error');
}
// get the XML root item
var root = xmlobject.getElementsByTagName('shoppingcart')[0];
var date = root.getAttribute("date");
alert("shoppingcart date=" + date);
var items = root.getElementsByTagName("item");
for (var i = 0 ; i < items.length ; i++) {
// get one item after another
var item = items[i];
// now we have the item object, time to get the contents
// get the name of the item
var name = item.getElementsByTagName("name")[0].firstChild.nodeValue;
// get the quantity
var quantity = item.getElementsByTagName("quantity")[0].firstChild.nodeValue;
alert("item #" + i + ": name=" + name + " quantity=" + quantity);
}
</script>
</body>
</html>
<body>
<script language="javascript" type="text/javascript">
//xml字符串
var xmlstring = '<?xml version=/"1.0/"?>/n'
+ '<shoppingcart date=/"14-10-2007/" total=/"123.45/">/n'
+ ' <item code=/"12345/">/n'
+ ' <name>Widget</name>/n'
+ ' <quantity>1</quantity>/n'
+ ' </item>/n'
+ ' <item code=/"54321/">/n'
+ ' <name>Another Widget</name>/n'
+' <quantity>2</quantity>/n'
+ ' </item>/n'
+ '</shoppingcart>';
alert(xmlstring);
try
{
// convert the string to an XML object
// 用于 IE 的代码:
if (window.ActiveXObject)
{
alert("activexobject");
var xmlobject =new ActiveXObject("Microsoft.XMLDOM");
xmlobject.async="false";
xmlobject.loadXML(xmlstring);
}
// 用于 Mozilla, Firefox, Opera, 等浏览器的代码:
else
{
alert("firefox");
var parser=new DOMParser();
var xmlobject =parser.parseFromString(xmlstring,"text/xml");
}
}
catch (e)
{
alert('error');
}
// get the XML root item
var root = xmlobject.getElementsByTagName('shoppingcart')[0];
var date = root.getAttribute("date");
alert("shoppingcart date=" + date);
var items = root.getElementsByTagName("item");
for (var i = 0 ; i < items.length ; i++) {
// get one item after another
var item = items[i];
// now we have the item object, time to get the contents
// get the name of the item
var name = item.getElementsByTagName("name")[0].firstChild.nodeValue;
// get the quantity
var quantity = item.getElementsByTagName("quantity")[0].firstChild.nodeValue;
alert("item #" + i + ": name=" + name + " quantity=" + quantity);
}
</script>
</body>
</html>
相关文章推荐
- javascript 解析后的xml对象的读取方法细解
- javascript解析XML生成树形结构
- javascript的XML解析
- Javascript、ASP解析(远程)XML
- 原生javascript实现解析XML文档与字符串
- 在JavaScript中使用DOM解析XML数据
- JavaScript中的XML解析
- JavaScript之Ajax-4 XML解析(JavaScript中的XML、Ajax返回并解析XML)
- javascript解析xml和json等
- javascript解析xml例子
- Javascript -- 级联菜单, javascript解析xml文件
- JavaScript解析XML的方法总结
- javascript解析XML生成树形结构(兼容Firefox,IE9)
- javascript 解析ajax返回的xml和json格式的数据
- javascript解析xml
- javascript解析xml文件
- JavaScript解析XML实现两级级联下拉列表
- JavaScript解析JSON及XML
- JavaScript解析XML的方法总结