ajax更新的pe:documentViewer呈现两次,并且具有无响应按钮



我有一个数据表

<p:dataTable ...>
    <p:ajax event="rowSelect" update=":previewDataForm" oncomplete="$('.previewDataModal').modal();"
            immediate="true">
    </p:ajax>
</p:dataTable>

我想在其中显示PDF (b标签是bootsfaces)的模式

<b:modal id="previewDataModal" title="Preview" styleClass="orderPreviewModalPseudoClass">
    <h:form id="previewDataForm">
        <pe:documentViewer height="550" value="#{contentStreamHelperBean.pdfFromFileSystem}" rendered="#{previewMB.renderPreview}"/>
    </h:form>
</b:modal>

我有问题,显示它的情况下ajax调用从dataTable。当我在rowSelect上有属性update=":previewDataForm"时,显示PDF,但它被渲染了两次,documentViewer中的按钮没有响应。当我从rowSelect中删除update=":previewDataForm"时,documentViewer不呈现。

当我用commandButton调用这个模态时,一切都工作正常。有办法如何渲染previewDataForm只有一次,然后从ajax显示它?

谢谢

模式在页面首先显示时呈现。换句话说,它是在用户选择一行之前呈现的。我建议您在<h:form>标记中添加rendered=条件,以防止PDF文件的初始呈现。我的猜测是PDF文件无法呈现,因为没有选择行(通常是NullPointerException),这会导致后续错误。

相关内容

  • 没有找到相关文章

最新更新