怎样解决这个问题?

Choice 2005-08-19 11:09:15
我在网页(纯HTML文件)里面有这样一个函数,直接用IE打开没有问题,但是把这个网页文件放入虚拟目录里,用http:/xxx/xxx.htm这样来访问的话就会出问题。
出现的脚本错是下面“var XmlNodeList = xmlDoc.documentElement.selectNodes("/Test/Question");”这句。提示“documentElement为空或不是对象”
后来我发现,只要在这一句之前加一个alert(123),它又运行正常了。那我想应该是xmlDoc还没加载完XML文件就执行那一行取值(因为把文件放到虚拟目录来访问会慢一点),所以出错。那现在应该如何解决呢?

function LoadQuestion(num)
{
var xmlDoc = new ActiveXObject("Msxml2.DOMDocument");

if(xmlDoc.load("questions/q"+num+".xml"))
{
var XmlNodeList = xmlDoc.documentElement.selectNodes("/Test/Question");
top.LeftFrame.l_TopFrame.lab_Question.innerText = CurrQuestion + "." + XmlNodeList[0].text
XmlNodeList = xmlDoc.documentElement.selectNodes("/Test/Selection");
……
……
}

...全文
40 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
Choice 2005-08-20
  • 打赏
  • 举报
回复
thank you ,it's work
lgq2369 2005-08-19
  • 打赏
  • 举报
回复
var xmlDoc = new ActiveXObject("Msxml2.DOMDocument");
后面加上
xmlDoc.async = false;

这时xmlDoc.load使用同步加载,必须等待加载完了才执行后面的操作

8,906

社区成员

发帖
与我相关
我的任务
社区描述
XML/XSL相关问题讨论专区
社区管理员
  • XML/XSL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧