大家好

一般說到在WEB端要檔案下載
一般來說都是直接轉跳網頁即可
因為如果轉跳的網頁是file
瀏覽器一般來說不會真的轉頁
除非遇到錯誤

但是有時候確實會遇到需要使用 ajax方式來下載資料
這時候就可以用
jquery.fileDownload.js

https://github.com/johnculviner/jquery.fileDownload

來輔助幫忙

 

//載入jquery.fileDownload.js
<script src="/{% static "jquery-file-download/jquery.fileDownload.js" %}" type="text/javascript"></script>
//要呼叫的
var mriStartExportZip = function() {
    //取得資料的位置
    var durl = '/mrifun/mriExportReport/';
    jQuery.fileDownload(durl, {
        //如果成功
        successCallback: function (url) {
            jQuery('body').unmask();
        },
        //如果失敗
        failCallback: function (html, url) {
            alert('ERROR 172385 發生錯誤: '+html);
        }
    });
}
</script>

 

有時候這種外掛小程式
並不是說非常的複雜
但是為了開發快速
必須要使用
為什麼呢?
因為系統都有所謂的時效性
如果今天我跟老闆說
"我會開發一個完美系統,但是要給我2年"

"我會開發一個初步系統,可能很多BUG且缺少旁支功能,但是只要2個月"
老闆應該都會選擇急著去看到這系統來使用
也就是說
即使在今天

時間

依然是專案的主要影響因素
而不是一堆"可能情況的考量"