下载 iframe 中加载的 html 内容
Download html content loaded inside 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);
}
});
在 ajax 调用 servlet 之后,将在服务器目录中创建一个物理 HTML 文件。现在我无法理解如何让用户/客户端自由地将该文件下载到他的本地系统。
请指教。
要下载文件,您需要执行完全回发到服务器。由于您使用的是 ajax,因此您可以通过将 iframe 的 src 属性指向 url 来实现这一点(理论上 - 我还没有对其进行测试),而 url 又将返回带有修改标头的 html 作为响应:"application/octet-stream"。通常就是这样的想法。实现将取决于您使用的服务器端环境。
相关文章:
- 如何根据html内容使用ng类-AngularJS
- JavaScript在其他页面上用html内容填充文本框
- Rails:如何在浏览器中显示动态html内容,而不会对其进行转义,也不会引起XSS攻击
- 使用javascript动态创建html内容/元素
- 无法将大型html内容POST到Chrome上的服务器
- 使用li元素的html内容更改该元素的背景
- 如何从ajax返回两个html内容
- jQuery获取子DIV的HTML内容
- HTML内容下推到固定背景图像下方
- 在angular中,使用ng repeat生成动态html内容
- 使用$watch更改html内容
- 如何使用window.showModalDialog()显示HTML内容
- 如何在使用 UIWebView 编辑 HTML 内容时正确调整输入语言更改 (LTR/RTL) 的文本对齐方式
- 获取垂直溢出容器的 html 内容
- 为数组中的每个项目追加 html 内容
- Dojo:在 iframe 加载时解析 HTML 内容
- 允许 Itemp 在 Enyo 中使用 HTML 内容
- 从选项卡中获取 HTML 内容
- 可以将HTML内容放在画布上(登录页)
- 只有当类是硬编码的时,才可以使用jQuery来显示/隐藏html内容