2012-11-15 22 views
1

我有primefaces datagrid.I我试图更新页上的点击所选择的值对话框的问题更新。 对话框并不会在最初显示任何值,但当我刷新页面并单击commandLink时,它会使用先前选择的值进行更新。 我在JBoss 4.3.0上使用primefaces-2.2.1。任何帮助将不胜感激。Primefaces的Datagrid:commandLink:对话框没有得到使用选定的值

<p:column> 
    <p:panel header="#{loc.loc_details}" style="text-align:center"> 
     <h:panelGrid columns="1" style="width:100%"> 
      <p:graphicImage value="/user/xyz/resources/images/#{loc.loc_details}.jpg"/> 

      <h:outputText value="#{loc.locality}" /> 
      <h:outputText value="#{loc.city}" /> 
      <h:outputText value="#{loc.state}" /> 
      <p:commandLink update="locDetail,locDetailGrid" oncomplete="locDialog.show()" title="View Detail" border="0" > 
       <p:graphicImage value="/user/xyz/resources/images/imagesCA6ETPOM.jpg" /> 
       <f:setPropertyActionListener value="#{loc}" 
        target="#{tutorialsBean.selectedLocality}" /> 
      </p:commandLink> 
     </h:panelGrid> 
    </p:panel> 
    </p:column> 

<p:dialog header="Loc Detail" widgetVar="locDialog" modal="true"> 
    <p:outputPanel id="locDetail" style="text-align:center;" layout="block"> 



    <h:panelGrid id="locDetailGrid" columns="2" cellpadding="5"> 
     <h:outputLabel for="loc_details" value="Locality Details :" /> 
     <h:outputText id="loc_details" value="#{tutorialsBean.selectedLocality.loc_details}" /> 

     <h:outputLabel for="city" value="City: " /> 
     <h:outputText id="city" value="#{tutorialsBean.selectedLocality.city}" /> 

     <h:outputLabel for="state" value="State: " /> 
     <h:outputText id="state" value="#{tutorialsBean.selectedLocality.state}" /> 
     <h:outputText styleClass="text_normal" value="First Name" /> 
     <p:inputText id="fnameText" value="#{tutorialsBean.firstName}" /> 
     <h:outputText styleClass="text_normal" value="Last Name" /> 
     <p:inputText id="lnameText" value="#{tutorialsBean.lastName}" /> 
     <h:outputText styleClass="text_normal" value="Email" /> 
     <p:inputText id="emailText" value="#{tutorialsBean.email}" /> 
     <p:commandButton id="searchButton" 
      value="Submit" action="#{tutorialsBean.submitValues}" 
      styleClass="button" /> 

    </h:panelGrid> 
    </p:outputPanel> 

回答

0

你commandLink添加更新和您的对话过程属性刷新信息。

这样的:

把ID对话框:

<p:dialog header="Loc Detail" id="locDialog" widgetVar="locDialog" modal="true"> 

把更新到对话框:

<p:commandLink update="locDetail,locDetailGrid" oncomplete="locDialog.show()" title="View Detail" border="0" update="locDialog" process="@this" ajax="true" partialSubmit="true" > 
    <p:graphicImage value="/user/xyz/resources/images/imagesCA6ETPOM.jpg" /> 
     <f:setPropertyActionListener value="#{loc}" target="#{tutorialsBean.selectedLocality}" /> 
</p:commandLink>