Jsf commandButton不生成请求,但正在工作
我面临着一个奇怪的情况,我有一个commandButton(我尝试了标准的h:commandButton和primefaces one p:commandButton),当点击按钮时,会调用支持bean中的一个方法并返回一个Excel文件。这个命令按钮在一个对话框中,但我认为这不会影响 问题是,这个按钮似乎没有生成任何请求,至少firebug没有显示它,但我从服务器获取Excel文件,如果没有请求,这是没有意义的Jsf commandButton不生成请求,但正在工作,jsf,jsf-2,primefaces,Jsf,Jsf 2,Primefaces,我面临着一个奇怪的情况,我有一个commandButton(我尝试了标准的h:commandButton和primefaces one p:commandButton),当点击按钮时,会调用支持bean中的一个方法并返回一个Excel文件。这个命令按钮在一个对话框中,但我认为这不会影响 问题是,这个按钮似乎没有生成任何请求,至少firebug没有显示它,但我从服务器获取Excel文件,如果没有请求,这是没有意义的 <h:commandButton id="downloadButton" v
<h:commandButton id="downloadButton" value="Download" action="#{bean.downloadExcel}"/>
<p:commandButton id="downloadButton" value="Download" action="#{bean.downloadExcel}" ajax="false" onsuccess="confirmDialogWv.close();"/>
我没有同时使用两个按钮,只是用两个按钮进行测试,结果相同
如果“一切正常”,问题是什么?如果没有任何请求,我无法关闭带有onsuccess事件的对话框
以前有人遇到过这个问题吗?有什么解释吗
提前感谢您的帮助
编辑:
第二个按钮打开一个新窗口并正常工作
更新:
正如前面所说的,firebug没有显示任何请求,但我现在已经用IE和Chrome进行了测试
Chrome:显示请求,但当我在浏览器中获取Excel文件时,请求的状态变为“已取消”
IE9:显示请求并返回代码200,但onsuccess事件未被触发您的按钮是否在对话框中的表单中?@Andy是的,对话框在表单中您可以多放一点代码吗?有了表单和对话框?@jedrus07,你就有了重要的部分。这是一个显而易见的问题(因为经常发生),你没有任何嵌套表单吗?
<h:form id="contentForm" prependId="false" >
<!-- lot of code -->
<p:dialog id="confirmDialog"
modal="true"
closable="false"
widgetVar="confirmDialogWv"
resizable="false"
header="Confirm">
<p:commandButton id="downloadButton" value="Download" action="#{bean.downloadExcel}" ajax="false" onsuccess="confirmDialogWv.close();"/>
<p:commandButton id="openHtmlButton" value="Open HTML" process="@form" update="@form" actionListener="#{bean.openHtml}"/>
</p:dialog>
</h:form>