透過AJAX 下載檔案
嘗試透過點擊按鈕啟動AJAX 下載請求時,您可能會遇到以下問題:目前使用的似乎無效。
您的方法涉及建立 XMLHttpRequest 物件並發送 GET 請求到一個 PHP 腳本 (download.php),該腳本設定特定標頭並從檔案中讀取資料。然而,這種方法並沒有觸發預期的下載提示。
解決方案
問題的癥結在於,僅靠AJAX無法直接啟動文件下載。要實現此目的,您可以利用以下兩種方法之一:
使用 window.location
此方法很簡單,不需要 AJAX 請求。只需將下載 URL 指派給 window.location。
window.location = "download.php";
這將導航到下載腳本並提示使用者下載文件,而不更改當前頁面。
使用download 屬性 (HTML5)
如果瀏覽器支援是一個問題,請考慮使用 download 屬性(受 Firefox 和Chrome)。
<a href="download.php" download>Download File</a>
下載屬性提示使用者下載檔案而無需離開目前頁面。
以上是為什麼 AJAX 不觸發文件下載,有哪些替代方案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!