如果单击 h:commandButton,rich:modalPanel 将不再显示

rich:modalPanel doesn't show up anymore if h:commandButton was clicked

首先,这个问题只出现在 Edge 上,在 Chrome 和 Firefox 上一切正常。

我正在使用 JSF 1.2 和 RichFaces 3.3。3.Final(社区修复了 IE9+)。

我有一个 rich:modalPanela4j:commandButton 打开。在模态面板上有一个 h:commandButton 隐藏模态面板并导出使用 jasperReports 生成的 pdf。我的问题是第一次导出文件后,模式面板不再显示。我必须重新加载页面,然后它才能再次运行。当我按 a4j:commandButton 打开模态面板时,控制台中没有任何新内容,最后一个日志是 "HTML1300: Navigation occured." ,它来自按 h:commandButton.

打开模式面板 (contents.jspx) - 将 printBean.showModalPanel 设置为 true:

<a4j:commandButton
    image="/img/print.gif"
    styleClass="clsCursorPointer"
    action="#{ printBean.onExportReport}"
    ajaxSingle="true"
    reRender="printConfirmationPanel" />

模态面板(forms.jspx):

<h:panelGroup id="printConfirmationPanel" >
    <rich:modalPanel id="printConfirmationMP"
        autosized="true"
        showWhenRendered="true"
        rendered="#{ printBean.showModalPanel}" >
        <h:form>
            <h:panelGrid columns="2" style="margin: auto">
                <h:commandButton id="confirmButton"             <--- Export button
                    value="#{ msgs['printButton']}"
                    actionListener="#{ printBean.onExportButton}" >

                    <f:attribute name="format" value="PDF"/>
                    (more attributes)
                </h:commandButton>

                <rich:componentControl
                    attachTo="confirmButton"
                    for="printConfirmationMP"
                    operation="hide"
                    event="onclick" />
            </h:panelGrid>
        </h:form>
    </rich:modalPanel>
</h:panelGroup>

问题已通过将 Edge 更新到版本 81.0.416.53 解决。