2014-07-03 10 views
16

Ho un'app RoR utilizzando bootstrap. Sto provando ad applicare il tag dell'icona html fontawesome a un helper submit_tag, ma non sembra essere supportato. Quando faccio clic su Invia, il contenuto disabilitato appare semplicemente come una stringa anziché essere interpretato in html, sebbene lo faccia per link_to helper.Come impostare html su data-disable-with con rail submit_tag

Ecco l'Erb:

<%= form_tag("/home/search", method: "get", class: "form-inline", role: "search", remote: true) do %> 
    <div class="form-group"> 
     <%= text_field_tag(:term, nil, {:class => "form-control", "data-html" => true, :value => @term}) %> 
    </div> 
    <%= submit_tag "Go!", class: "btn btn-transparent", role: "button", 'data-disable-with' => "<i class='fa fa-spinner fa-spin'></i> Searching...".html_safe %>  
<% end %> 

Ecco cosa viene fuori cercando come quando si fa clic di conferma: enter image description here

Funziona con link_to, ma poi non può passare il valore della text_field_tag per collegare altrimenti, sarei felice con quella soluzione. Preferirei davvero evitare di scrivere me stesso il metodo .ajax e usare javascript per manipolare i valori dei pulsanti. Qualche suggerimento su come risolvere questo problema con i tag FormHelper standard? Molte grazie in anticipo.

+0

Prova a dare come questo '<% = submit_tag" Vai! ", Classe:" btn btn-transparent ", ruolo:" button ", data: {disable_with:" Ricerca in corso ... ". Html_safe}%>' – Pavan

+0

Ciao Pavan, sì, sicuramente l'ho provato anche in questo modo. Stessa cosa ...: \ – Slenny

risposta

24

Si dovrebbe cercare di cambiare submit_tag-button_tag, qualcosa di simile:

<%= button_tag "Go!", class: "btn btn-transparent", 'data-disable-with' => "<i class='fa fa-spinner fa-spin'></i> Searching...".html_safe %>  
+0

Grazie a te, questo button_tag ha fatto il trucco, è quello di cui avevo bisogno. – Slenny

+3

Questa è sicuramente la risposta corretta. I tag HTML di "submit" hanno uno stile molto diverso rispetto ai tag "button'. L'utilizzo di 'button' invierà comunque il modulo ma consentirà anche i tag HTML incorporati. –

2

Se si utilizza simple_form:

<%= f.button :button, 'Save', class: 'my-class', data: {disable_with: '<i class='fa fa-spinner fa-spin'></i>'} %> 
0

una punta rapida sulla generazione di un button_to con html_safe e disable_with :

<%= button_to some_path, method: :post, class: 'btn btn-md btn-primary', "data-disable-with": '<span class="fa fa-2x fa-spinner fa-spin"></span>'.html_safe do %> 
    <span class="fa fa-2x fa-facebook-square"></span> 
<% end %> 
Problemi correlati