js 加载并解析XML字符串的代码
作者:bea
JS加载xml文档实例books.xml 代码如下: <?xml version="1.0" encoding="ISO-8859-1"?> <bookstore> <book category="children"> <title lang="en"></title> <author>J K. Rowling</author> <year>2005</year&
JS加载xml文档实例
books.xml
代码如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<bookstore>
<book category="children">
<title lang="en"></title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="cooking">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="web" cover="paperback">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
<book category="web">
<title lang="en">XQuery Kick Start</title>
<author>James McGovern</author>
<author>Per Bothner</author>
<author>Kurt Cagle</author>
<author>James Linn</author>
<author>Vaidyanathan Nagarajan</author>
<year>2003</year>
<price>49.99</price>
</book>
</bookstore>
loadxml.htm
代码如下:
<html>
<head>
<script>
try //Internet Explorer
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
}
catch(e)
{
try //Firefox, Mozilla, Opera, etc.
{
xmlDoc=document.implementation.createDocument("","",null);
}
catch(e) {alert(e.message)}
}
try
{
xmlDoc.async=false;
xmlDoc.load("books.xml");
document.write(xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue); }
catch(e){alert(e.message);}
</script>
</head>
<body>
</body>
</html>
下面的是加载与解析xml文件的例子,但xml是自定义的字符串,一般在后台语言中用的到。
<html>
<head>
<script type="text/javascript">
function parseXML()
{
text="<note>";
text=text+"<to>George</to>";
text=text+"<from>John</from>";
text=text+"<heading>Reminder</heading>";
text=text+"<body>Don't forget the meeting!</body>";
text=text+"</note>";
try //Internet Explorer
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false";
xmlDoc.loadXML(text);
}
catch(e)
{
try //Firefox, Mozilla, Opera, etc.
{
parser=new DOMParser();
xmlDoc=parser.parseFromString(text,"text/xml");
}
catch(e)
{
alert(e.message);
return;
}
}
document.getElementById("to").innerHTML=xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue;
document.getElementById("from").innerHTML=xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;
document.getElementById("message").innerHTML=xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue;
}
</script>
</head>
<body onload="parseXML()">
<h1>W3Schools Internal Note</h1>
<p><b>To:</b> <span id="to"></span>
<b>From:</b> <span id="from"></span>
<b>Message:</b> <span id="message"></span>
</p>
</body>
</html>
[Ctrl+A 全选 注:
如需引入外部Js需刷新才能执行]
如果看完了上面的实例可以看下下面的文章。
http:///article/14604.htm
有用 | 无用
books.xml
代码如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<bookstore>
<book category="children">
<title lang="en"></title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="cooking">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="web" cover="paperback">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
<book category="web">
<title lang="en">XQuery Kick Start</title>
<author>James McGovern</author>
<author>Per Bothner</author>
<author>Kurt Cagle</author>
<author>James Linn</author>
<author>Vaidyanathan Nagarajan</author>
<year>2003</year>
<price>49.99</price>
</book>
</bookstore>
loadxml.htm
代码如下:
<html>
<head>
<script>
try //Internet Explorer
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
}
catch(e)
{
try //Firefox, Mozilla, Opera, etc.
{
xmlDoc=document.implementation.createDocument("","",null);
}
catch(e) {alert(e.message)}
}
try
{
xmlDoc.async=false;
xmlDoc.load("books.xml");
document.write(xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue); }
catch(e){alert(e.message);}
</script>
</head>
<body>
</body>
</html>
下面的是加载与解析xml文件的例子,但xml是自定义的字符串,一般在后台语言中用的到。
<html>
<head>
<script type="text/javascript">
function parseXML()
{
text="<note>";
text=text+"<to>George</to>";
text=text+"<from>John</from>";
text=text+"<heading>Reminder</heading>";
text=text+"<body>Don't forget the meeting!</body>";
text=text+"</note>";
try //Internet Explorer
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false";
xmlDoc.loadXML(text);
}
catch(e)
{
try //Firefox, Mozilla, Opera, etc.
{
parser=new DOMParser();
xmlDoc=parser.parseFromString(text,"text/xml");
}
catch(e)
{
alert(e.message);
return;
}
}
document.getElementById("to").innerHTML=xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue;
document.getElementById("from").innerHTML=xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;
document.getElementById("message").innerHTML=xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue;
}
</script>
</head>
<body onload="parseXML()">
<h1>W3Schools Internal Note</h1>
<p><b>To:</b> <span id="to"></span>
<b>From:</b> <span id="from"></span>
<b>Message:</b> <span id="message"></span>
</p>
</body>
</html>
[Ctrl+A 全选 注:
如需引入外部Js需刷新才能执行]
如果看完了上面的实例可以看下下面的文章。
http:///article/14604.htm
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- jQuery Attributes(属性)的使用(一、属性篇)
- Javascript attachEvent传递参数的办法
- firefox下对ajax的onreadystatechange的支持情况分析
- javascript document.execCommand() 常用解析
- JavaScript 创建随机数和随机图片
- JQuery Tips(3) 关于$()包装集内元素的改变
- JQuery Tips(2) 关于$()包装集你不知道的
- 最简单的javascript对象实例代码
- 读取table内容的javascript代码
- js 页面传参数时 参数值含特殊字符的问题
- input 日期选择功能的javascript代码
- JQuery下关于$.Ready()的分析
- javascript下搜索子字符串的的实现代码()
- javascript与asp.net(c#)互相调用方法
- JavaScript 字符串与数组转换函数[不用split与join]
- 魔方在线秒表javascript版
- jQuery 行背景颜色的交替显示(隔行变色)实现代码
- 页面中iframe相互传值传参
- jquery提示 "object expected"的解决方法