提交表单以在新窗口中打开 pdf 时丢失参数

发布于 2024-10-04 08:00:20 字数 827 浏览 2 评论 0原文

我的java webApp(struts2和jQuery)有一个带有表单的jsp:

<s:form id="theForm" action="stampaPosizioneFinanziaria" target="_new">

和一个jQuery按钮:

<a id="stampaPerCliente">Stampa standard</a> // rendere by $('#tampaPerCliente').button();

单击按钮时:

$('#stampaPerCliente').click(function(){ avviaStampa(0); });

...

function avviaStampa(tipoStampa) {
  $('[name=tipoStampa]').val(tipoStampa); // I set a hidden field
  $('#theForm').submit();
      // tried document.forms[0].submit(); too, same behavior.
}

因此,打开的新页面(表单目标是_new)调用读取参数表单并显示的操作一个pdf文件。 一切正常,但是:在 IE 上,当我第一次单击按钮时,它可以工作,第二次不能,第三次可以,依此类推。 “不起作用”意味着该操作的每个输入参数都为空!我监控了请求,在 IE 上没有请求参数! (偶数次,不是奇数次!) 在 Chrome 和 FF 上运行良好。

请帮忙。

My java webApp (struts2 and jQuery) has a jsp with a form:

<s:form id="theForm" action="stampaPosizioneFinanziaria" target="_new">

and a jQuery button:

<a id="stampaPerCliente">Stampa standard</a> // rendere by $('#tampaPerCliente').button();

On button click:

$('#stampaPerCliente').click(function(){ avviaStampa(0); });

...

function avviaStampa(tipoStampa) {
  $('[name=tipoStampa]').val(tipoStampa); // I set a hidden field
  $('#theForm').submit();
      // tried document.forms[0].submit(); too, same behavior.
}

So, the new page opened (the form target is _new) calls an action that read the paramters form and displays a pdf.
Everything works fine BUT: on IE when I click the button first time it works, second time doesn't, third time does and so on.
The 'doesn't work' means the action has every input parameters null! I monitored the request and on IE there aren't request parameters! (even times, not odd times!)
It works fine on Chrome and FF.

Help please.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

独孤求败 2024-10-11 08:00:20

我解决了使用 GET 方法提交:

<s:form id="theForm" action="stampaPosizioneFinanziaria" target="_new" method="GET">

POST 方法(struts2 s:form 默认)导致了这个问题(?!!!?)。

I solved using GET method for submission:

<s:form id="theForm" action="stampaPosizioneFinanziaria" target="_new" method="GET">

The POST method (default for struts2 s:form) caused this issue (?!!!?).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文