簡體   English   中英

HTML / JQuery:如何打開文件; 不刷新新標簽; 並保留當前頁面狀態?

[英]HTML/JQuery: How to open a file; without flashing new tab; and retaining current page state?

單擊鏈接可以下載文件。

在客戶的機器上:

1)在某些系統上; IE或Firefox具有用於在瀏覽器中顯示PDF的插件; 點擊鏈接。

2)在某些系統上,IE沒有插件; 因此,當我們單擊鏈接時; 一個新的選項卡閃爍一秒鍾,然后使用保存/保存為打開等選項對話框下載文件。

以下是鏈接的打開方式; 因此應保留頁面狀態:

<a href="http://www.gasl.org/refbib/Bible_King_James_Version.pdf" target="_blank">Holy Bible</a>

現在要求

查詢1:客戶端不想從瀏覽器中刪除插件,而希望通過對話框下載文件。 可能嗎?

查詢2(重要):我們可以下載文件嗎? 這樣新的標簽頁不會被刷新並下載文件?

更新 :無法刪除目標屬性,好像我將刪除目標屬性,並且如果瀏覽器中仍存在插件,則頁面狀態將完全不會保留。

PHP:

在您的鏈接中,將href設置為“ download.php?file = file.pdf或數據庫中的任何ID,或者只是文件名,無論如何。使用以下方法創建一個download.php文件:

$path = path/of/the/file/; 
$filename = $_GET['file'];
header('Content-Transfer-Encoding: binary');
header('Last-Modified: ' . gmdate('D, d M Y H:i:s', filemtime($path)) . ' GMT');
header('Accept-Ranges: bytes');
header('Content-Length: ' . filesize($path));
header('Content-Encoding: none');
header('Content-Type: application/pdf');
header('Content-Disposition: attachment; filename=' . $filename);
readfile($path);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM