通過Ajax請求下載Execl 的問題,掉進一個坑裡半個多小時,特此來記錄一下 。 起初 我誤以為是後臺的問題,然而調試了一下並不是這樣的,也不會報錯,且進入了success 函數。 以下的事件及請求參數看上去貌似也沒問題。 <a href="#" class="easyui-linkbutton" ...
通過Ajax請求下載Execl 的問題,掉進一個坑裡半個多小時,特此來記錄一下 。
起初 我誤以為是後臺的問題,然而調試了一下並不是這樣的,也不會報錯,且進入了success 函數。
以下的事件及請求參數看上去貌似也沒問題。
<a href="#" class="easyui-linkbutton" onclick="downLoadExcelTemplate()">下載模板</a>
//下載模板
function downLoadExcelTemplate() {
$.ajax({
type: 'POST',
url: "DownLoadExcelTemplate",
data: null,
success: function (redata) {
}
});
};
其實情況就出在這裡,下載文件是不能直接通過Ajax方式的,如果需要使用Ajax操作的話,我們可以這樣寫
在請求成功之後我們通過創建一個 <a> 標簽然後添加 href屬性,最後觸發該屬性就OK了
function downLoadExcelTemplate() {
$.ajax({
type: 'POST',
url: "DownLoadExcelTemplate",
data: null,
success: function (redata) {
var $a = $("<a");
$a.attr("href", "DownLoadExcelTemplate");
$("body").append($a);
$a[0].click();
$a.remove();
}
});
};