我有一个显示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文件。现在我无法理解如何让用户/客户端自由地将该文件下载到他的本地系统。
请建议。
答案 0 :(得分:0)
要下载文件,您需要对服务器执行完整回发。既然你正在使用ajax,你可以通过将你的iframe的src属性指向url来实现这个(理论上我没有测试过),而url反过来将返回响应修改后的标题的html:“application / octet-stream ”。这通常是这个想法。实现将取决于您正在使用的服务器端环境。