用javascript读取xml所有数据;在服务器运行提示对象不在,在本地运行可以
用javascript读取xml所有数据;
在服务器运行提示对象不在,在本地运行可以.
11.xml
<Diantai>
<item> <link> com </link> <name> 北京 </name> <提示> </提示> <备份> 音乐电台 </备份> </item>
<item> <link> cn </link> <name> 东方 </name> <提示> </提示> <备份> N </备份> </item>
</Diantai>
----------------------
WritexmlDate.js
function WritexmlDate(xmlFilename,id,hang){
// code for IE
if (window.ActiveXObject){
mg=new ActiveXObject( "Microsoft.XMLDOM ");
mg.async=false;
mg.load(xmlFilename);
}
// code for Mozilla, Firefox, Opera, etc.
else
{
var parser=new DOMParser();
var doc=parser.parseFromString(xmlFilename, "text/xml ");
}
//获取xml节点
var x=mg.getElementsByTagName( 'name ');
var h=mg.getElementsByTagName( 'link ');
var Ftitle=mg.getElementsByTagName( '备份 ');
//获取xml第一条 <item> 里面的 <备份> 标签的数据
document.write( " <div id= ' "+id+ " ' class= 'Classneirong '> <div id= 'Ititle '> <div class= 'l '>      "+Ftitle[0].childNodes[0].nodeValue+ " <\/div> \/div> <div id= 'DowmMp3 '> <ul class= 'listUrl '> ");
var i;
//获取xml数据
for (i=0;i <x.length;i++) {
document.write( " <li> <a style= 'margin-left :11px;; ' href= ' "+h[i].childNodes[0].nodeValue+ " '> "+x[i].childNodes[0].nodeValue+ " </a> </li> ");
if((i+1)%hang==0) document.write( " <br> ");
}
document.write( " <\/ul> <\/div> <div id= 'top '> <a href= '#top '> Top <\/a> <\/div> <\/div> ");
}
------------------------
11.html
<script type= "text/javascript " src= "js/WritexmlDate.js "> </script>
<script language= "javascript " >
WritexmlDate( "11.xml ", "M01 ");
</script>
--------------
运行11.html 本地打开可以显示所有数据.
放到服务器中,打开html不能显示xml的数据,提示缺少对象.
请问那里错了.
[解决办法]
<script language= "javascript " >
window.onload=function(){
WritexmlDate( "11.xml ", "M01 ");
}
</script>