我有一个控制器(Spring-MVC)生成一个获取请求的PDF报告。控制器将标题设置为“application/OCTET-STREAM”,“Content-Disposition”,“attachment; filename = \”“+ filename +”\“”,以便用户获得强制保存/打开对话框。控制器获得生成的pdf并将pdf字节直接写入响应的输出流。返回的ModelAndView为null。ajax/html/javascript解决方案禁用报表生成按钮,然后改变
问题是我需要/想要禁用点击后生成报告请求的按钮,然后在报告完成时重新启用它以防止双击。
我以为我可以使用prototype.org的Ajax.Request来做到这一点......这段代码的确可以正常工作按钮,但之后我被卡住了,因为客户端从未获得pdf。我猜我需要做一些回应,但我不知道是什么。任何想法/帮助表示赞赏。
function displayPdf(button_b, pdf_url) {
button_b.disabled = true;
new Ajax.Request(pdf_url, {
asynchronous:true,
evalScripts:true,
method:'get',
onComplete: function(response) {
button_b.disabled = false;
},
onFailure: function() {
redAlert('crap');
}
});
}
我不能投票,因为我是一个noob,但这是一个公平的解决方案。感谢:D – BabaBooey 2010-03-15 14:08:50