Sto provando ad emettere alcuni j in linea su una pagina. Non voglio davvero aggiungerlo a nessun file JS poiché è così originale e utilizzabile una sola volta. Detto questo, sto usando haml e sto anche provando a usare content_for per posizionare il JS dopo che jquery è stato caricato dal layout.HAML Avere più linee durante l'utilizzo di content_for, per JavaScript
Il problema è che Haml non piace il testo multilinea che è rientrato (credo)
che sto cercando di fare quanto segue:
=content_for :javascript do
$(function(){
$("#sell_tickets_here").live("vclick",function(){
if($(this).is("checked"))
$("#tickets_here").display("inline");
else
$("#tickets_here").display("none");
});
});
Nel mio layout ho:
= yield(:javascript)
Che funziona effettivamente se ho solo 1 riga dopo l'istruzione content_for.
Grazie questo ha funzionato. L'unica cosa da notare è che se si dispone di contenuti per javascript provenienti da più pagine, verrà inserito un tag script per ciascuno di essi. l'haml: javascript esegue il wrapping
Questo si chiama escaping, e in questo caso si sfugge, ergh, rientro:
=content_for :javascript do /$(function(){ / $("#sell_tickets_here").live("vclick",function(){ / if($(this).is("checked")) / $("#tickets_here").display("inline"); / else / $("#tickets_here").display("none"); / }); /});
fonte
2014-03-12 14:34:04