在使用 EasyUI 的過程中,有時候需要進行數據的下載,這時候可以使用 EasyUI 的 json 下載功能。
要實現 json 下載提示,需要引入一個下載函數:
function download(fileUrl) { var elemIF = document.createElement("iframe"); elemIF.src = fileUrl; elemIF.style.display = "none"; document.body.appendChild(elemIF); }
其中,fileUrl 是一個可以通過后臺獲取的文件鏈接。
使用這個函數實現 json 下載提示的代碼如下:
$.ajax({ url: 'downloadJson', type: 'post', data: {id: 1}, success: function(response) { if (response.success) { var fileUrl = response.fileUrl; download(fileUrl); } else { $.messager.alert('Error', response.message, 'error'); } }, error: function() { $.messager.alert('Error', '下載失敗,請重試!', 'error'); }, beforeSend: function() { $.messager.progress({ title: '下載提示', msg: '正在下載,請稍候...' }); }, complete: function() { $.messager.progress('close'); } });
其中,url 是后臺的下載鏈接,type 是請求類型,data 是需要傳遞到后臺的數據。
在 success 函數中,如果后臺返回的成功標志為 true,則調用 download 函數來完成下載,并在后臺返回的文件鏈接作為參數傳入。
如果返回的成功標志為 false,則彈出錯誤提示信息。
在 error 函數中,提示下載失敗。
在 beforeSend 函數中,提示正在下載。
在 complete 函數中,關閉下載提示。
上述代碼即可實現 EasyUI 的 json 下載提示。