HAML mit mehreren Zeilen bei Verwendung von content_for für JavaScript

8

Ich versuche einige inline js auf einer Seite auszugeben. Ich möchte es nicht wirklich zu irgendeiner JS Akte hinzufügen, da es so arbitrary ist und einmal benutzt. Davon abgesehen benutze ich haml und versuche auch content_for zu verwenden, um das JS zu platzieren, nachdem jquery aus dem Layout geladen wurde.

Das Problem ist, dass haml nicht mehrzeiligen Text mag, der eingerückt ist (denke ich)

Ich versuche folgendes zu tun:

%Vor%

In meinem Layout habe ich:

%Vor%

Was eigentlich funktioniert, wenn ich nur eine Zeile nach der Anweisung content_for habe.

    
Parris 30.12.2011, 01:25
quelle

2 Antworten

15

Die korrekte Syntax wäre:

%Vor%

Beachten Sie den Bindestrich im Vergleich zum Gleichheitszeichen und den :javascript HAML-Filter . HAML funktioniert gut mit Multi-Line, solange es 2-Space eingerückt ist.

Und dann in dem anderen Teil Ihrer Ansicht:

%Vor%     
iwasrobbed 30.12.2011, 01:33
quelle
0

Dies wird Escaping genannt, und in diesem Fall entkommen Sie, ergh, indentation:

=content_for :javascript do / $(function(){ / $("#sell_tickets_here").live("vclick",function(){ / if($(this).is("checked")) / $("#tickets_here").display("inline"); / else / $("#tickets_here").display("none"); / }); / });

    
phil pirozhkov 12.03.2014 14:34
quelle