Visivo pagina di aiuto Force: valori che passano problema dal casella di selezione al controllore
-
12-10-2019 - |
Domanda
Ho pagina VF con 2 scatole selezionare uno per il progetto e altri per pietre miliari. Voglio passare questi valori per il metodo nel controller. Questo metodo di controllo restituisce una stringa che deve utilizzato in javascript. Tutti questi deve accadere sul click del pulsante di invio. Quello che ho attualmente ho è che la stringa che viene utilizzato dal javascript è creato nel costruttore della classe e sto riferendo la stringa direttamente dal javascript.
Credo che il problema è coz sto scrivendo il codice per generare la stringa consumata dal javascript nel costruttore e per generare il codice ho bisogno di utilizzare i selezionare i valori della scatola. Questi valori non sono popolati quando viene eseguito il costruttore.
Per questo posso spostare questo codice in un metodo di controllo. Ma la questione per me è come faccio a passare questi apice selezionare i valori box nel metodo di controllo e quindi eseguire una funzione JavaScript dopo che il metodo di controllo viene eseguito.
Grazie
Prady
Soluzione
È possibile utilizzare una combinazione di onclick
, rerender
e oncomplete
per passare i dati avanti e indietro tra Javascript e il controller. Il possente Jeff Douglas ha un grande esempio a http://blog.jeffdouglas.com/2011/01/17/passing-values-to-javascript-from-apex-controller-method/
Altri suggerimenti
Crea un <apex:inputHidden id="hiddenField" value="{!stringValue}"/>
ora accedervi da
document.getElementById("{!$Component.myForm.hiddenField}").value
<apex:page>
<apex:form id ="myForm">
<apex:inputHidden id="hiddenField" value="{!stringValue}"/>
<apex:form>
</apex:page>