我正在开发一个Struts2网络应用程序,我遇到了firefox的问题。如果我使用Chrome测试相同的功能,它可以很好地工作,但是使用firefox没有任何反应。让我解释一下我的所作所为:
jQuery函数创建表单(wrapper
是我页面中的容器,myValue
取决于用户请求):
var form = $('<form/>', {action: 'myAction', target= '_blank'});
var hiddenInput = $('<input/>', {type: 'hidden', name= 'reportId', value= myValue});
myWrapper.append(form.append(hiddenInput));
form.submit();
当我提交表单时,Struts2使用Jasper创建一个报告,并在新选项卡中打开PDF文档。
但是在Firefox中我看到表单提交,我看到Struts2生成了PDF,但新选项卡没有打开。我正在Ubuntu 14.04 LTS下开发,Firefox版本是46.0.1。
答案 0 :(得分:0)
我遇到了同样的问题,并通过将表单附加到文档然后在提交后将其删除来解决问题。
var testHTML = angular.element('<form id="testForm" target="_blank" action="something.html" method="post" <input type="hidden" name="FirstName"/>');
angular.element(document.body).append(testHTML);
testHTML.submit();
angular.element(testHTML).remove();