ajax 请求返回excel,建议使用jQuery的AJAX返回一个excel文件
时间: 2023-12-19 12:57:07 浏览: 99
可以使用jQuery的AJAX来请求服务器返回一个Excel文件,但是需要注意几点:
1. 服务器需要设置响应头Content-Type为application/vnd.ms-excel或application/octet-stream;
2. 服务器需要设置响应头Content-Disposition为attachment;filename=xxx.xls,其中xxx.xls为要下载的文件名;
3. AJAX请求成功后,需要通过Blob对象创建一个URL并将其赋给a标签的href属性,然后模拟点击a标签来下载文件。
以下是一个示例代码:
```javascript
$.ajax({
url: 'downloadExcel.php',
type: 'GET',
dataType: 'blob',
success: function(data) {
var downloadUrl = URL.createObjectURL(data);
var a = document.createElement('a');
a.href = downloadUrl;
a.download = 'example.xls';
document.body.appendChild(a);
a.click();
setTimeout(function() {
document.body.removeChild(a);
window.URL.revokeObjectURL(downloadUrl);
}, 100);
}
});
```
其中downloadExcel.php是服务器端脚本,用于生成Excel文件并返回给客户端。
阅读全文