启动客户端从C#/ASP.NET页面中的Javascript调用下载文件?

启动客户端从C#/ASP.NET页面中的Javascript调用下载文件?,javascript,asp.net,Javascript,Asp.net,我需要从javascript代码启动ASP.NET页面的文件下载 我最好的选择是什么?是否可以调用Web服务来执行此操作,或者以某种方式调用C#page的常用事件处理程序 请注意,我将检索大量数据,许多兆字节。您可以使用Javascript为要下载的文件创建iframe。看看这个答案:您可以使用一个隐藏的IFRAME元素并启动一个文件下载请求,这确实给人一种AJAX文件下载的感觉 下载文件时,您可以在客户端的表单中执行其他活动 是的,您也可以在此URL中调用webservice或aspx页面或h

我需要从javascript代码启动ASP.NET页面的文件下载

我最好的选择是什么?是否可以调用Web服务来执行此操作,或者以某种方式调用C#page的常用事件处理程序


请注意,我将检索大量数据,许多兆字节。

您可以使用Javascript为要下载的文件创建iframe。看看这个答案:

您可以使用一个隐藏的IFRAME元素并启动一个文件下载请求,这确实给人一种AJAX文件下载的感觉

下载文件时,您可以在客户端的表单中执行其他活动

是的,您也可以在此URL中调用webservice或aspx页面或http处理程序

function dowloadFileJS()  {
      // Create an IFRAME.
      var iframe = document.createElement("iframe");

      // Point the IFRAME to GenerateFile
      iframe.src = "GenerateFile.aspx?yourQueryString=myQueryString";

      // This makes the IFRAME invisible to the user.
      iframe.style.display = "none";

      // Add the IFRAME to the page.  This will trigger a request to GenerateFile now.
      document.body.appendChild(iframe); 
    }
见此帖: