我想要一個按鈕,用戶可以單擊下載文件,但文件可能不存在,因爲它是其他文件的壓縮文件,必須生成。我正在使用AJAX進行檢查,但是一旦我收到一個正確的URL,我不確定如何讓用戶下載它。讓用戶通過JavaScript下載文件?
window.open(link, '_blank');
嘗試打開窗口下載文件,但大多數瀏覽器都會阻止此操作並將其視爲彈出窗口。讓用戶像這樣下載文件的最佳做法是什麼?謝謝。
這裏是JS的功能,我使用供參考:
function getDownloadedFiles() {
var INTERVAL_TIME = 3000,
$projectView = $('#project-view'),
id = $projectView.data("project-id");
$.ajax({
type: "GET",
url: AJAX_URL + id,
success: function(data) {
if (data.success) {
var link = data.profiler.link;
window.open(link, '_blank');
} else {
setTimeout(getDownloadedFiles, INTERVAL_TIME);
}
}
});
}
擺脫Window.open的。如果瀏覽器無法自動處理該文件,它將自行打開SaveAs對話框。除非用戶已經設置了偏好設置,在這種情況下,只需將文件下載到他們的驅動器,並在完成後通知他們。 – durbnpoisn
[下載使用Javascript/jQuery的文件]的可能的重複(http://stackoverflow.com/questions/3749231/download-file-using-javascript-jquery) – admdrew
我看着這個問題,解決方案不適合我。 –