我需要用javascript動態啓動下載。我看到人們如何通過執行類似用javascript開始下載
window.open("some url", "Download");
做到這一點,但我需要做的是在不改變當前頁面的URL(而不是使用框架,如果我能幫助它,或者動態創建和銷燬框架)。任何人都知道如何做到這一點?
我需要用javascript動態啓動下載。我看到人們如何通過執行類似用javascript開始下載
window.open("some url", "Download");
做到這一點,但我需要做的是在不改變當前頁面的URL(而不是使用框架,如果我能幫助它,或者動態創建和銷燬框架)。任何人都知道如何做到這一點?
你不需要window.open()
。這很簡單醜陋,容易出現popupblockers(你無法控制客戶端)。如果請求的下載URL的響應頭包含Content-Disposition: attachment
,則只需window.location
就足夠了。這不會改變瀏覽器地址欄中的當前URL或當前頁面,而只是彈出一個另存爲對話。
E.g.
window.location = 'http://download.winzip.com/winzip145.exe';
您現在處於正確的軌道上,您必須強制瀏覽器請求新的「頁面」,即使該頁面是文件。
你可能想嘗試的window.open()
第二個參數的關鍵字之一 - 像_blank
- 必須有某種辦法讓在Chrome中打開新的URL ...
window.open不會更改當前頁面的url。它會打開一個新頁面(除非彈出窗口阻止程序停止它)。 – Zafer 2010-09-05 04:06:00
在Chrome中它什麼都不做,我也需要一個跨瀏覽器的方法。 – kzip 2010-09-05 04:18:44
哦,其實我錯了,Chrome甚至沒有告訴我它阻止了彈出窗口。謝謝。 – kzip 2010-09-05 04:20:23