首页 > 解决方案 > 从对话框 Primefaces 更新表单中的 dataTable

问题描述

我有一个 .xhtml 文件,其中包含 1 个表单和 1 个对话框,例如:

<h:form id="frmMain">
   <p:dataTable id="tblFormItem"
                widgetVar="wgFormItem">
      <p:column>
      ...
      </p:column>
   </p:dataTable>
   <p:commandButton value="Add value"
                    onstart="PF('dlg').show()"
                    oncomplete="PF('dlg').hide()"
                    action="#{bean.openDialog}"/>   <!-- openDialog() will open a dialog has id "dialog" -->
</h:form>

<p:dialog id="dialog"
          widgetVar="wgDialog">
   <h:form id="dialogForm">
      <!-- Some stuffs -->
      <p:commandButton value="Save"
                       update=":messages :frmMain:tblFormItem"
                       action=#{bean.save}"/>

我得到了错误Cannot find component for expression ":frmMain:tblFormItem"

我搜索并尝试了在 Google 上找到的所有内容,但仍然产生相同的错误。

请帮助我,如何从对话框中的命令按钮更新数据表?

标签: jsfprimefaces

解决方案


推荐阅读