2016-09-01 27 views
2

我試圖以編程方式單擊具有下載屬性和href從服務器下載文件的<a>元素。但是,如果下載出錯,服務器將返回一個帶有錯誤狀態代碼的html頁面。由於HTML5下載屬性,它會嘗試強制下載此HTML頁面或下載服務器錯誤文件。有沒有一種方法,我可以打開一個新的選項卡,而不是下載的HTML錯誤文件?我已經將目標屬性設置爲_blank。HTML5 <a>下載Javascript中的屬性無法處理服務器錯誤

+0

到目前爲止您嘗試了什麼?你的代碼? – Sachith

回答

0

可以要求使用XMLHttpRequestfetch該文件,如果沒有錯誤發生,設置<a>元件hrefdownload屬性,否則重定向用戶記錄顯示的錯誤響應。

0

您可以創建新元素,例如按鈕並使用clickevent和jquery ajax請求來檢查服務器是否可用。

$.ajax({ 
    url: "/url/to/file", 
    type: "GET", 
    success: //handle succes -> download file, 
    error: //handle error 
});