使用Ajax调用下载Excel可以通过以下步骤实现:
$.ajax()
方法或者fetch()
函数来发送请求。<a>
标签,设置其href
属性为文件路径,然后使用JavaScript模拟点击该标签来触发文件下载。以下是一个示例代码:
前端页面代码:
<button id="downloadBtn">下载Excel</button>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
$(document).ready(function() {
$('#downloadBtn').click(function() {
$.ajax({
url: '/download-excel', // 后端接口地址
type: 'GET',
success: function(response) {
// 下载文件
var downloadLink = document.createElement('a');
downloadLink.href = response.fileUrl;
downloadLink.download = 'excel.xlsx';
downloadLink.click();
},
error: function(error) {
console.log(error);
}
});
});
});
</script>
后端接口代码(使用Node.js和Express框架示例):
const express = require('express');
const app = express();
app.get('/download-excel', (req, res) => {
// 生成Excel文件并保存到服务器临时目录
const filePath = '/path/to/excel.xlsx';
// 返回文件路径给前端
res.json({ fileUrl: filePath });
});
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
请注意,以上示例代码仅为演示Ajax调用下载Excel的基本思路,实际应用中需要根据具体情况进行适当的修改和优化。
领取专属 10元无门槛券
手把手带您无忧上云