excel導出 ajax錯誤判斷 數據爲空判斷

$http({ url: url, method: "POST", data: postData, headers: { 'Content-type': 'application/json' }, dataType: "json", responseType: 'arraybuffer' }).success(function (data) {json

var blobJudge = new Blob([data]);
        //將Blob 對象轉換成字符串
        var reader = new FileReader();
        reader.readAsText(blobJudge, 'utf-8');
        reader.onload = function (e) {
            var json = eval('(' + reader.result + ')');
            console.info(reader.result);
            if(json.result=='3016'||json.result=='3015'){
                var dataReturn={};
                dataReturn.msg = "導出的數據爲空";
                dataReturn.result = 4000;
                returnLoginConfirm(dataReturn, url);
                def.resolve(dataReturn);
            }else{
                //導出excel
                var blob = new Blob([data], {type: "application/vnd.ms-excel"});
                var objectUrl = URL.createObjectURL(blob);
                var a = document.createElement('a');
                document.body.appendChild(a);
                a.setAttribute('style', 'display:none');
                a.setAttribute('href', objectUrl);
                a.setAttribute('download', fileName);
                a.click();
                URL.revokeObjectURL(objectUrl);
            }
        }
    }).error(function (err) {
        var data = {};
        if (err && err.msg && err.result) {
            data.msg = err.msg;
            data.result = err.result;
        } else {
            data.msg = "導出的數據爲空";
            data.result = 4000;
        }
        returnLoginConfirm(data, url);
        def.resolve(data);
    });
相關文章
相關標籤/搜索