想通过javascript 载入xml,实现导航,在IE7 下通过运行,在firefox下,本地运行没有问题,放在服务器上,无法显示,请问这是什么原因?代码如下:
function loadNav()
{
var xmlDoc
// ceate a xml object
try
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); //for IE
}
catch(e)
{
try
{
xmlDoc = document.implementation.createDocument("","",null); //for firefox
}
catch(e)
{
alert(e.message);
}
}//open Navigation.xml try
{
xmlDoc.async = false;
xmlDoc.load("./xml/Navigation.xml");
}
catch(e) {alert(e.message);}
//create a navigation item list
for( var i = 0; i < xmlDoc.getElementsByTagName("Title").length; i++)
{
var optionHtmlDoc = document.createElement('Option');


optionHtmlDoc.text = xmlDoc.getElementsByTagName("Title")[i].firstChild.nodeValue;

optionHtmlDoc.value = xmlDoc.getElementsByTagName("Link")[i].firstChild.nodeValue;

var selectHtmlDoc = document.getElementById("backissue");

try
{
selectHtmlDoc.add(optionHtmlDoc,null);
}
catch(ex)
{
selectHtmlDoc.add(optionHtmlDoc);
}

}}

解决方案 »

  1.   

    <script language="javascript" type="text/javascript">
      //创建XMLDOM对象
       var xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
       //使用同步的方式加载XML文档
       xmlDoc.async= false;
       //加载XML文档
       xmlDoc.load("001.xml");
       //输出XML文档的根元素名称
       document.write("该XML文件的根元素名称为:" + xmlDoc.documentElement.nodeName);
    </script>在其他浏览器中:<script language="javascript" type="text/javascript">//创建XMLDOM对象var xmlDoc=document.implementation.createDocument("","",null),  //使用同步的方式加载XML文档xmlDoc.async=false;//加载XML文档 xmlDoc.load("001.xml");//输出根元素document.write("该XML文件的根元素名称为:"+xmlDoc.documentElement.nodeName);本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/shihuaxian/archive/2009/08/19/4463669.aspx
      

  2.   

    楼上的能否提些实质性的解决思路,至于怎么加载XML,我是清楚的.
      

  3.   

    楼主你是不是读不到数据啊,读不到数据就不会显示,就会报错的,js读取xml就存在这个问题,一般情况下所有字段不要为空,一旦一条数据位空可能就会出现读取不到的时候,会报错
      

  4.   

    可以读取数据,本地测试在IE和Firefox都可以正常运行,在服务端,IE没有问题,就是Firefox无法显示.