Postback Javascript in Grails
-
03-07-2019 - |
Domanda
Qualcuno sa come avviare una richiesta POST in un'applicazione Grails usando JavaScript. In particolare, vorrei poter postare quando un elemento selezionato in una casella a discesa viene modificato.
Ho provato ad usare jQuery e il metodo $ .post (). Richiama correttamente l'azione del controller, ma non sono sicuro di come aggiornare la pagina con i contenuti della risposta. Lo schermo non è aggiornato. Qualche idea? Questo non deve essere asincrono.
Non sono legato all'utilizzo di jQuery, sto solo cercando di capire come fare un POST da un javascript.
Andrew
Il mio javascript sul lato client
<script type="text/javascript" language="javascript">
$(document).ready( function() {
$("#ownerId").change(function() {
$.post("/holidayCards/clientContact/ownerSelected", {ownerId: this.value});
});
});
Soluzione
Trova l'oggetto modulo nel DOM che stai cercando e cal .submit () su di esso. Hai più di un modulo o multipli nella tua pagina?
Altri suggerimenti
Hai detto che sta chiamando l'azione del tuo controller, quindi sta recuperando informazioni sulla pagina che è il problema, giusto?
Prova qualcosa del genere:
def ajaxRandom = {
def randomQuote = quoteService.getRandomQuote()
response.outputStream << "<q>${randomQuote.content}</q>"
}
Tutto ciò che serve alla tua pagina gsp è:
<q>${quote.content}</q>