2016-08-03 3 views
0

Tout d'abord, j'utilise Primefaces. J'ai une boîte de dialogue avec des champs tels que inputText, selectOneMenu, selectCheckboxMenu. Mais j'ai aussi un domaine où j'ai quelque chose comme ceci:Mise à jour de la valeur outputText après avoir sélectionné dans une autre boîte de dialogue

<p:row> 
    <p:column styleClass="addLabelColumn addLabel"> 
     <p:outputLabel value="Pracownik: " /> 
    </p:column> 
    <p:column styleClass="addLabel addEmployeeLabelColumn"> 
     <h:outputText id="employeeValue" value="#{accountModel.account.employee}" /> 
    </p:column> 
    <p:column> 
     <p:commandButton type="button" id="employee" value="Wybierz" 
         onclick="PF('chooseEmployeeDlg').show()"/> 
    </p:column> 
</p:row> 

CommandButton ouvre le dialogue avec datatable, où l'utilisateur peut choisir rangée avec l'employé et puis cliquez sur OK, afin que le outputText est mis à jour avec une représentation de chaîne selectedObject.

<p:commandButton value="OK!" onclick="PF('chooseEmployeeDlg').hide()" update="accountAssignGrid" /> 

compteAssignGrid est le tableau de bord entourant, où se trouvent tous les champs. Mon problème est que outputText n'est mis à jour que lorsque la validation de tous les champs est réussie. Si je n'écris pas correctement dans des champs validés, la propriété employeeValue outputText n'est pas mise à jour. Je veux que le texte de sortie soit toujours mis à jour lorsque le compte.Modèle.Account.employé change ou lorsque l'utilisateur clique sur le bouton OK dans la boîte de dialogue avec la donnée de l'employé.

Donc, ma dernière question est: Comment mettre à jour seulement le outputText sans soumettre et valider l'ensemble du formulaire?

+1

En savoir plus sur l'attribut de processus ici: http://stackoverflow.com/questions/25339056/understanding-process-and-update-attributes-of-primefaces – Kukeltje

Répondre

0

Pour tous ceux qui seront à la recherche de réponse à cette question: Dans ce cas particulier, la solution était de mettre le dialogue avec datatable dans une autre forme.

+1

Pas nécessaire du tout (lire mon commentaire). Et si vous le faites de cette façon, vous devez mettre à jour l'attribut de mise à jour. S'il vous plaît améliorer à la fois votre question (montrer le formulaire) et vous répondez (montrer le «code corrigé») – Kukeltje