我需要在excel文件中导出数据。我正在使用相同的JSON帖子。它在IE以外的每个浏览器中都能正常工作。看看我的javascript代码如下: -
function ExportQueryData() {
var Qry = $("#txtQueryInput").val();
if ($.trim(Qry) == "") {
$("#txtQueryInput").addClass("error");
return false;
}
else
$("#txtQueryInput").removeClass("error");
var url = "/Reports/ExportQueryData";
var frmserialize = $("#frmQuery").serialize();
$.post(url, frmserialize, function(data) {
data = eval("(" + data + ")");
if (data.Success) {
url = "/Reports/Export";
var win = window.open(url, "DownloadWin", "resizable=0,status=0,toolbar=0,width=600px,height=300px");
win.focus();
win.moveTo(100, 100);
return false;
}
else {
Notify("DB Query", data.Message);
}
});
}
根据上面的代码,我使用window.open调用/Reports/Export
动作。除了IE之外,每个浏览器都会弹出这个弹出窗口。在IE弹出窗口中,在1或2秒内同时关闭。
我需要使用JSON帖子,因为它验证输入然后返回成功状态。我只能在服务器端验证我的数据。
如果此处缺少任何信息,请告诉我们 你的建议对我有价值 感谢。
答案 0 :(得分:1)
我认为你有一个弹出阻挡器的情况......坦率地说,我不认为弹出一个东西是个好主意。浏览器似乎讨厌它。
您可以向用户显示该文件的链接,要求他点击下载。