是否可以将Web服务指定为iFrame的来源?
我正在尝试使用文件下载,但由于我的文件在SQL Server中存储为二进制文件,因此我无法将用户指向特定文件。我必须获取文件,处理它并提示用户保存/打开对话框。我想知道是否有办法将iFrame指向一个负责处理文件下载请求的webservice调用?
我已尝试过以下代码,但它无效。
知道我在这里缺少什么吗?
<iframe id="downloadFrame" style="display:none"></iframe>
<input type="button" value="Download File" title="Download File" onclick = "JavaScript: return downloadFlie();" />
function downloadFlie()
{
var iframe = document.getElementById("downloadFrame");
iframe.src = "Services/svcAttachments.asmx/DownloadFile?FileId=5";
return false
}
答案 0 :(得分:1)
为什么不只使用锚点和目标?
<a href="Services/svcAttachments.asmx/DownloadFile?FileId=5" target="_blank">Download</a>
答案 1 :(得分:0)
您可以使用通用处理程序(* .ashx)来实现此目的。
我已经为您搜索了此示例:http://geekswithblogs.net/hmloo/archive/2012/03/07/how-to-download-files-using-a-generic-handler.aspx