setTimeout(function() {
alert("111");
document.body.addBehavior("#default#download"); 
alert("222");
document.body.startDownload(url,onDone); 
alert("333");
return;
}, 100);就是这段代码出的问题,111和222都能正确运行,333没弹,程序应该就是卡在333上面那一句了,请教下这句有啥问题啊,为啥本地运行正常,放到在本地架的服务器上测试就不行了。先谢了

解决方案 »

  1.   

    那个是在IE环境中的函数  你先确认一下你的浏览器环境  如果不是IE  换成IE试一试
      

  2.   

    应该出错在document.body.startDownload(url,onDone);  你alert一下url,onDone
      

  3.   

    看下onDone函数的定义,贴出来
      

  4.   

    setTimeout(function() {
    alert("111");
    document.body.addBehavior("#default#download"); 
    alert(url);alert(onDone);
    document.body.startDownload(url,onDone); 
    alert("333");
    return;
    }, 100);按照提示改了alert,url是上一步选中的文件名“d:\aaa.txt”onDone是函数
    function onDone(txtData)  { 
    contentLength = txtData.length;
    line = txtData.split("\r\n");
    n = 0;
    getline();
    }
      

  5.   

    http://www.paipaitxt.com/r4784383_1/
    就是这个程序,在本地运行正常,一上服务器就不干了。
      

  6.   

    搜索网上看来,好像是权限的问题,可我已经把http://localhost加到信任网站里了,还是不行
      

  7.   

    onDone(txtData) 是需要参数的。你调用时都没有参数,怎么能行?