_onRequestComplete : function(request) {
    alert(1);
         var fh = fopen("c:\\response.txt", 3); // Open the file for writing
         alert(2);
         if(fh!=-1) // If the file has been successfully opened
         {
            var str = request.responseText;
            fwrite(fh, str); // Write the string to a file
            fclose(fh); // Close the file 
          } 
..............................这是我插在第三方库(rico livegrid)里面的几个简单语句,希望把ajax的返回结果打印到一个文本看一下(response内容太多,alert显示不下)。从执行结果来看,alert(1);有显示,执行到了;alert(2);没有执行到,2没打出来,后续也都没有再执行,似乎卡在这了。我不知道哪里没写对请高手看一下,谢谢。fopen的写法是从网上找的。

解决方案 »

  1.   

    这是一个ricoLiveGrid.js的第三方库,确实是一个ajax客户端,不过我的客户端和server端都在本机。如果是你所说,怎样才能把它保存到一个文件里呢?我想看responseText里的全部内容,怎么做呢?内容有点多。请指点迷津。谢谢!
      

  2.   

    就是说用一般的弹出窗口(alert)显示不下。
      

  3.   

    我怎么看你的代码像是java的呢?
      

  4.   

    mykelly6:这段代码是我在网上找的,我不知道javascript如何读写文件。运行看好像没有语法错误(我用的firebug没有报语法错误),只是运行到fopen会卡住。
    你们知道怎么让我看到完整的request.responseText变量内容吗?如果不能写文件的话。
      

  5.   

    js不允许操作客户端文件。除非你用activex等插件做,纯js 是不行的。网站就是这样。如果js随便写,那写一个病毒给你你会觉得怎么样?
      

  6.   

    那我这个例子应该怎么调试呢?我想看看request.responseText变量内容
      

  7.   

    net_lover: 这一点很合理,我也没有怀疑。我的问题是,我怎么才能看到那个变量的内容?
      

  8.   

    1 可以使用FireFox浏览器并下载FireBug组件查看运行时变量名称.
    2 function (r)
    {
    var win = window.open("", "", "width=100, height=100");var doc = win.documentdoc.open();
    doc.writeln(request)
    doc.close(); 
    }
      

  9.   

    1 可以使用FireFox浏览器并下载FireBug组件查看运行时变量名称.
    2 function (request)
    {
    var win = window.open("", "", "width=100, height=100");var doc = win.documentdoc.open();
    doc.writeln(request)
    doc.close(); 
    }JS不能操作客户端IO,但可以再打开一个新窗体.