我有一个链接,它在简单的jquery的新选项卡中启动新的html页面,如,没有问题。如何在提供下载对话框时将页面作为html提供服务
预计:
- 页面在新标签打开,并应保持打开,另存为对话框提示
当前异常行为:
- 页面打开在新选项卡中,然后用提示保存对话框关闭
不久,我想保持页面打开,同时提示另存为对话框。使用Content-Disposition
附件似乎没有机会保持打开页面。 我也没有做任何exit();
,但从未显示该页面,除了对话框。
感谢
我有一个链接,它在简单的jquery的新选项卡中启动新的html页面,如,没有问题。如何在提供下载对话框时将页面作为html提供服务
预计:
当前异常行为:
不久,我想保持页面打开,同时提示另存为对话框。使用Content-Disposition
附件似乎没有机会保持打开页面。 我也没有做任何exit();
,但从未显示该页面,除了对话框。
感谢
尝试最初拉着你的页面作为一个正常的页面,并使用元刷新重定向到相同的URL与参数告诉你的PHP再次服务的页面下载。
例子:
<?php
$isDownload = isset($_GET['download']);
if($isDownload) {
header('Content-disposition: attachment');
}
?>
<html>
<head>
<?php if(!$isDownload) { ?>
<meta http-equiv="refresh" content="0;<?=$_SERVER['REQUEST_URI']?>?download" />
<?php } ?>
...
不知道这是一个很好的答案或不..但也许..打开显示的页面另存为对话框&尝试一些document.location.href =“abspathtofile “;在js ..虽然我不知道这是你正在寻找..
插入一个元刷新标签到您当前在弹出窗口中服务的页面。此元刷新应该指向该文件要下载:
popup.php:
<head>
...
<meta http-equiv="refresh" content="10;URL='http://www.example.com/downloads/file.ext'" />
...
</head>
这将在新窗口中显示popup.php,和10秒后的保存对话框将显示,提示用户下载该文件file.ext
发送刷新头
标题( “刷新:5; URL = HTTP://www.example.com中下载= 1?”);
,而不是需要修改你的模板中添加meta标签
在jQuery代码,在任何的是在此过程中被使用的功能“返回false”? – 2012-02-28 16:02:27
jquery除了:window.open(url,'external');我期待更多的服务器端的事情。谢谢 – swan 2012-02-28 16:03:42