前端请求 Excel 文件下载。

要实现 Excel 导出功能,你需要在前端发送请求后,后端返回一个 Excel 文件的响应,然后前端处理这个文件下载。以下是完整的实现方案:
前端代码需要修改为处理文件下载的方式:

这种方式比使用 $.post 更适合文件下载,因为:
文件下载需要浏览器处理响应为文件,而不是 JSON 等数据格式
form 提交可以自然地处理文件下载的响应头
后端需要设置正确的响应头,以 PHP 为例:

// 导出Excel按钮点击事件
$("#export").click(function(){
    // 创建表单或直接跳转来触发文件下载
    var form = $('<form></form>');
    form.attr('action', "{:url('signin/excel')}");
    form.attr('method', 'post');
    // 如果需要传递参数,可以添加隐藏字段
    form.append('<input type="hidden" name="param1" value="value1">');
    
    // 将表单添加到页面并提交
    $('body').append(form);
    form.submit();
    // 提交后移除表单
    form.remove();
});

这种实现方式兼容所有浏览器,能正确触发文件下载对话框,让用户选择保存位置。如果需要传递参数,只需在表单中添加相应的隐藏字段即可。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容