0

我有一个显示 HTML 页面的 iframe。有一个对服务器的 ajax 调用,它创建 HTML 文件并返回文件的路径作为响应,我动态地创建 iframe 并显示它。

现在,我需要知道,有没有办法允许用户从该 iframe 下载该 HTML 文件?可能是单击时进行下载的按钮。

我怎样才能提取它?抱歉,如果问题的框架不正确。我正在尽力而为。下面是显示 HTML 文件的代码

$.ajax({
    url: 'diffReport?url='+url,
    success:function(data){
        var div = document.getElementById("diffReport");
        div.innerHTML = '<iframe style="width:100%;height:100%;" frameborder="0" src="'+data+'" />';
    },
    error: function(xhr, status, error) {
        var err = eval("(" + xhr.responseText + ")");
        console.log(err);
    }
});

在对 servlet 进行 ajax 调用之后,会在服务器目录中创建一个物理 HTML 文件。现在我无法理解如何让用户/客户端自由将该文件下载到他的本地系统。

请建议。

4

1 回答 1

0

To download file you need to perform full postback to the server. Since you are using ajax you can achieve this (in theory - I have not tested it tough) by pointing the src attribute of your iframe to the url which in turn will return the html in response with modified header: "application/octet-stream". Thats generally the idea. The implementation will depend on server side environment you're using.

于 2013-10-23T09:33:55.657 回答