<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script>
<!--
var root;
var request;
function read()
{try {
request = new XMLHttpRequest();
}
catch(e){
request = new ActiveXObject("Microsoft.XMLHTTP");
}
request.open("get","test.xml",false);
request.onreadystatechange=result;
request.send()}
function result(){
if (request.readyState == 4) {
if (request.status == 200) {
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc=request.responseText;
root = xmlDoc.getElementsByTagName("channel")[0];
items=root.getElementsByTagName("item");
alert("返回的信息为:"+root)
}}
}
//-->
</script>
</head>
<body>
<input id="name" name="name" type="button" Value="测试" onclick="return read();">
</body>
</html>test.xml
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" title="XSL Formatting" href="/show_new_final.xsl" media="all"?>
<rss version="2.0">
<channel>
<item>
<title><![CDATA[福建用装甲车护送甲骨文等54件国宝(图)]]></title>
<link>http://news.sina.com.cn/c/2007-09-11/001512543845s.shtml</link>
<author>WWW.SINA.COM.CN</author>
<guid>http://news.sina.com.cn/c/2007-09-11/001512543845s.shtml</guid>
<category><![CDATA[国内焦点新闻]]></category>
<pubDate>Tue, 11 Sep 2007 04:50:46 GMT</pubDate>
<comments></comments>
<description><![CDATA[]]></description>
</item>
</channel>
</rss>
我想通过JS获取这个xml里面的item title category description link.应该怎么写..各位帮帮我..
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script>
<!--
var root;
var request;
function read()
{try {
request = new XMLHttpRequest();
}
catch(e){
request = new ActiveXObject("Microsoft.XMLHTTP");
}
request.open("get","test.xml",false);
request.onreadystatechange=result;
request.send()}
function result(){
if (request.readyState == 4) {
if (request.status == 200) {
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc=request.responseText;
root = xmlDoc.getElementsByTagName("channel")[0];
items=root.getElementsByTagName("item");
alert("返回的信息为:"+root)
}}
}
//-->
</script>
</head>
<body>
<input id="name" name="name" type="button" Value="测试" onclick="return read();">
</body>
</html>test.xml
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" title="XSL Formatting" href="/show_new_final.xsl" media="all"?>
<rss version="2.0">
<channel>
<item>
<title><![CDATA[福建用装甲车护送甲骨文等54件国宝(图)]]></title>
<link>http://news.sina.com.cn/c/2007-09-11/001512543845s.shtml</link>
<author>WWW.SINA.COM.CN</author>
<guid>http://news.sina.com.cn/c/2007-09-11/001512543845s.shtml</guid>
<category><![CDATA[国内焦点新闻]]></category>
<pubDate>Tue, 11 Sep 2007 04:50:46 GMT</pubDate>
<comments></comments>
<description><![CDATA[]]></description>
</item>
</channel>
</rss>
我想通过JS获取这个xml里面的item title category description link.应该怎么写..各位帮帮我..
if (request.readyState == 4) {
if (request.status == 200) {
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc=request.responseText;////改成这个样子试试 xmlDoc.load(request.responseText);
root = xmlDoc.getElementsByTagName("channel")[0];
items=root.getElementsByTagName("item");
alert("返回的信息为:"+root)
}}
}
var objCategory = request.responseXML.getElementsByTagName("category ");
var objDesc = request.responseXML.getElementsByTagName("description ");
var objLink = request.responseXML.getElementsByTagName("link");if(objTitle != null && objTitle[0].text.length > 0)
var Title= objTitle[0].text;
if(objCategory!= null && objCategory[0].text.length > 0)
var category = objCategory[0].text;
if(objDesc!= null && objDesc[0].text.length > 0)
var description = objDesc[0].text;
if(objLink!= null && objLink[0].text.length > 0)
var link= objLink[0].text;
function getData()
{
var arrNode = new Array();
var oXml = new ActiveXObject("Msxml2.DOMDocument");
oXml.async = false;
oXml.load("XML相對路徑");
var row = oXml.getElementsByTagName("item");
for(var i = 0 ;i<row.length;i++)
{
arrNode[arrNode.length] = row[i].selectSingleNode("title").text+";";
arrNode[arrNode.length] += row[i].selectSingleNode("category ").text+";";
arrNode[arrNode.length] += row[i].selectSingleNode("description ").text+";";
arrNode[arrNode.length] += row[i].selectSingleNode("link").text+";";
}
return arrNode;//返回一個數組
}
有谁知道么 发完贴了才看见这有个和我遇到一样问题的 ...
我找了下 IE下的好说 FF下是nodeValue
{
var str = "";
if(window.ActiveXObject) //IE
{
str = obj.text;
}
else //Mozilla
{
try
{
str = obj.childNodes[0].nodeValue;
}
catch(ex)
{
str = "";
}
}
return str;
}
我的xml文件(123.xml)是:
<?xml version="1.0" encoding="GBK"?>
<cart>
<student id="12">
<name >huang'wei</name>
</student>
<student id="2">
<name >hw</name>
</student>
</cart>jsp代码如下:
<html>
<head>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
<title>title2011-3-19</title>
<script type="text/javascript" src="js/read_xml.js"></script>
<script type="text/javascript">
function abc(){
var xmlDom = loadXmlFile("123.xml");
var cart=xmlDom.getElementsByTagName("student");
//objDocRoot = xmlDom.documentElement;
var id=cart[0].getAttribute("id");
//alert(id);
var oName = cart[0].getElementsByTagName("name");
document.getElementById("o").innerHTML = oName[0].firstChild.nodeValue;
var name=oName[0].firstChild.nodeValue;
//alert("姓名:"+name);
}
</script>
<style type="text/css">
.a{
background-color: green;
width: 200pt;
height: 20pt;
}
</style>
</head>
<body><center>
<input type="button" value="submit" onclick="abc()">
<div id="o" class="a"></div>
</center>
</body>
</html>