2012-06-14 15 views
5

Eventuali duplicati:
pass parameter in g:remoteLink as result of javascript functionPasso Javascript variabile in graal RemoteFunction

Sto cercando di chiamare un call remoteFunction che viene attivato da un onclick per un pulsante, ma il clic non lo fa chiama la funzione Ho testato il comando onlick con un avviso di avvio e la funzione è stata chiamata. ecco il mio codice

<input type="button" onclick="exportList()" value= "Export"/> 

function exportList(){ 

      var profile= document.getElementById('dropdown').value 
      ${remoteFunction(controller: 'profile' , action:'export', params: "'profile=' + profile")} 


} 

Quando prendo il parametro e il profilo var, la funzione non è ancora chiamato ... Il mio controller e l'azione sono correttamente chiamati così non so il motivo per cui sto avendo questo errore. Grazie in anticipo se puoi aiutare!

+0

stesso con http://stackoverflow.com/questions/10023672/pass-parameter-in-gremotelink-as-result-of-javascript-function –

risposta

3

JoeCortopassi è corretta - non si può semplicemente utilizzare i graal costruiscono di ${remoteFunction...} direttamente in javascript. Ho fatto questo utilizzando jQuery come questo:

function exportList() { 
    var profileToUse = document.getElementById('dropdown').value 
    jQuery.ajax({ 
     url: "/youApp/profile/export", 
     type: "POST", 
     data: {profile: profileToUse} 
    }); 
} 
+0

Questa è la risposta giusta. con Grails, grazie @Kelly – JoeCortopassi

2

Non so che cosa questo dovrebbe fare, ma sembra poco formate

${remoteFunction(controller: 'profile' , action:'export', params: "'profile=' + profile")} 

sei sicuro che vuoi dire var{remoteFunction()}? Causa $ è solo una variabile. Ha ancora meno senso se si utilizza jQuery. Inoltre, ciò che si sta passando remoteFunction() sembra che avrebbe dovuto essere oggetto, ma non è avvolto in {}

+0

aveva nessun effetto –

+0

modificato per un'altra idea @daniellanger – JoeCortopassi

+0

Non capisco cosa stai proponendo –