日期:2014-05-17  浏览次数:20666 次

xml在应用xslt文件transformNode时的问题
不知道怎么搞得,我在使用以下代码时
var xmldoc = new ActiveXObject("Microsoft.XMLDOM"); 
xmldoc.async = false; 
xmldoc.load("test.xml"); 

var xsldoc = new ActiveXObject("Microsoft.XMLDOM"); 
xsldoc.async = false; 
xsldoc.load("test.xslt");
   
con.innerHTML=xmldoc.transformNode(xsldoc);

本人用的VS2005中的C#做Web开发。

有如下种种情况:
首先说不使用工具,直接用记事本写一个html页面做测试用。把xml文件和xslt文件拷到同目录下,运行没有问题,如果要是在页面里面写绝对路径不行。这个不难解决。
下面我要把其应用的工程里面。

在工程中的aspx页面里面我使用了如上代码,直接运行或是右键浏览当前页面都没有反应,而后我同样在工程下,建立了一个html的测试页面,然后同样是没有反应。
但是如果我创建一个虚拟目录的话访问这个html页面就可以成功了。不知道怎么搞得。
还有呀
关于这个async.当async=true的时候,他会提示要访问的资源还没有准备好,不知道这些问题应该怎么样去解决。

望各位鼎力帮助,会的不会的把想法留下,多多益善,先行谢过

声明一下,我的con是一个div的ID


------解决方案--------------------
放在aspx文件里时,div可能由于外部还有父级html element所以直接用 id取不到.
试下
alert(xmldoc.transformNode(xsldoc));
看看有无正确的弹出.
如果有,说明这里没有问题,将 con.innerHTML = ...改为
document.getElementById("con").innerHTML = ....;

如果无正确的弹出,先试试 alert(xmlDoc.xml);看看有无输出.