2013-02-20 8 views
7

Ho una finestra di dialogo per inserire alcuni campi, uno di questi è un p: editor che viene visualizzato come se fosse disabilitato mentre non lo è. Una strana stringa "vera" viene visualizzata nel corpo dell'editor. Il codice:L'editor di priming in una finestra di dialogo non funziona

<p:dialog id="insertPanel" header="Inserisci" widgetVar="dlg1" appendToBody="true" modal="true"> 
    <h:form id="insertForm"> 
    <h:panelGrid columns="2"> 
     <h:outputLabel value="Nome: " for="name" /> 
     <p:inputText id="name" value="#{controller.name}" /> 
     <h:outputLabel value="Oggetto: " for="subject" /> 
     <p:inputText id="subject" value="#{controller.subject}" /> 
     <h:outputLabel value="Visibilità: " for="visibility" /> 
     <p:inputText id="visibility" value="#{controller.visibility}" /> 
     <h:outputLabel value="Testo: " for="text" /> 
     <p:editor id="text" value="#{controller.text}" width="600"/> 
     <f:facet name="footer"> 
     <p:commandButton actionListener="#{controller.insert}" value="Inserisci" /> 
     </f:facet> 
    </h:panelGrid> 
    </h:form> 
</p:dialog> 

Un'immagine della finestra di dialogo che mostra il problema:

Editor in dialog problem

Come si può vedere l'editor è come disabili e mostra "vero" nel suo corpo.

+0

Se può aiutare, ho notato che se si preme il pulsante di inserimento senza inserire altri campi il ritorno form con errore di convalida, e solo allora l'editor inizia a lavorare! Non capisco perché! –

+0

Stai posizionando il '' all'interno di qualsiasi altro componente PrimeFaces come ''? –

+0

Sì, è all'interno di un '', ma c'è 'appendToBody =" true "', non dovrebbe risolvere quasi nulla? –

risposta

7

Ho risolto questo problema. Ho appena inserito update=":insertForm" nel comandoButton che apre la finestra di dialogo e funziona.

<p:commandButton id="insertButton" value="Inserisci" oncomplete="dlg1.show();" update=":insertForm" /> 
+1

Ciao, grazie per aver condiviso la soluzione, hai capito perché funziona solo se aggiorni il modulo ?? – PermGenError

2

Provare ad aggiungere showEffect="fade" al componente di dialogo.

+2

Please spiegare in dettaglio quale sia la causa probabile e perché pensi che questa sia la soluzione. Questa risposta è altrimenti inutile/inutile e potrebbe essere meglio pubblicata come commento. – BalusC

+0

Non riesco ancora ad aggiungere commenti a causa della bassa reputazione :( Ho già avuto lo stesso problema e l'ho risolto controllando la seguente risposta sul forum delle primefaces http://forum.primefaces.org/viewtopic.php?f=3&t = 8993 & start = 10 [link] –

+0

Ovviamente questa non è una soluzione per il mio problema –