下载iframe中加载的html内容

时间:2013-10-23 09:19:16

标签: javascript jquery html ajax iframe

我有一个显示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文件。现在我无法理解如何让用户/客户端自由地将该文件下载到他的本地系统。

请建议。

1 个答案:

答案 0 :(得分:0)

要下载文件,您需要对服务器执行完整回发。既然你正在使用ajax,你可以通过将你的iframe的src属性指向url来实现这个(理论上我没有测试过),而url反过来将返回响应修改后的标题的html:“application / octet-stream ”。这通常是这个想法。实现将取决于您正在使用的服务器端环境。