我在点击链接时正在运行对servlet的ajax调用。该链接没有直接调用的servlet。它取而代之的是“onClick”函数。
$('#exportExcelLink').on("click", function(e) {
e.preventDefault();
var docStatus=JSON.stringify(g_checkboxVal);
$.ajax({
type : "GET",
url : '/bin/servlets/dashboardexcelexport',
data : { docStatus: docStatus },
contentType: 'application/json',
success : function(data) {
console.log("excel export call success");
},
error : function(data) {
console.log("error occured in excel export call");
}
});
});
我可以看到我的服务器日志中生成了excel,响应头也显示了文件名和类型(在控制台的网络选项卡中看到)。
但是我没有弹出文件打开或保存。页面上根本没有任何活动。
我还需要做点什么吗?
答案 0 :(得分:0)
使用内置的createObjectURL方法创建带有Ajax响应的URL。然后创建一个隐藏的链接并使href成为您创建的对象。然后使用JavaScript单击链接