Ajax 在托管bean中发生更改时更新p:dialog的内容

Ajax 在托管bean中发生更改时更新p:dialog的内容,ajax,jsf,jsf-2,primefaces,Ajax,Jsf,Jsf 2,Primefaces,我有一个数组列表显示在一个p:对话框中,当我点击命令按钮时,这个列表被改变了。然后我想知道如何在托管bean中执行方法的过程中显示每个更改的列表内容 托管bean中的迭代过程与对话框中的(DataList/progressbar)之间的同步 对话框: <h:body><h:define name="dialogBox"><p:dialog id="genDialog" header="Opération de génération" modal="true

我有一个数组列表显示在一个p:对话框中,当我点击命令按钮时,这个列表被改变了。然后我想知道如何在托管bean中执行方法的过程中显示每个更改的列表内容

托管bean中的迭代过程与对话框中的(DataList/progressbar)之间的同步

对话框:

    <h:body><h:define name="dialogBox"><p:dialog id="genDialog" header="Opération de génération"  modal="true"  widgetVar="dlg1">  
              <h:outputText value="le traitement de la génération est en cours..." /> 
              <p:dataList id="sitesDataList" value="#{generationBean.generatedSites}"    var="siteStatus" itemType="square" >

                    #{siteStatus.site} ---------------> #{siteStatus.status}

              </p:dataList>

            </p:dialog>
</h:define >
</h:body>

#{siteStatus.site}--------------------------->{siteStatus.status}
命令按钮:

   `<h:form  id="form1" > <h:panelGrid  columns="2" id="panButton">` <p:commandButton  id="genbutton" style="margin-left: 930px"  value="#{generationBean.labelBoutonGen}"   immediate="true"  global="false" onstart="dlg1.show()"
                                          actionListener="#{generationBean.genererDPT}"   rendered="#{ generationBean.selectedRegion ne 'choix'}"  update="sitesDataList">

 </h:panelGrid  > </h:form>`
`
`

我正在glassfish服务器中运行primefaces 3.5,将
update=“sitesDataList”
添加到您的命令按钮。如果命令按钮和数据列表不在同一命名容器中,则需要提供数据列表的完整路径,如
update=“:myFormId:level1ContainerId:level2ContainerId:etc:sitesDatalist”
。如果看不到完整的代码,我无法给出准确的答案。

它不会刷新“sitesDataList”列表,那么您需要提供按钮以及嵌套按钮和数据列表的所有命名容器的代码。您仍然没有包含标记,命名容器很重要。需要知道对话框的封闭标签-从UI树的根到数据列表的完整路径,好吗?