Как установить html на data-disable-with to rails submit_tag

У меня есть приложение RoR, использующее bootstrap. Я пытаюсь применить fontovesome тег значка html к помощнику submit_tag, но он, похоже, не поддерживается. Когда я нажимаю кнопку "Отправить", отключенное содержимое просто появляется как строка, а не интерпретируется в html, хотя это делает для хелпера link.to.

Здесь 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 %>

Вот что он выглядит, когда я нажимаю submit: enter image description here

Он работает с link_to, но тогда я не могу передать значение из text_field_tag ​​в link_ в противном случае, я был бы доволен этим решением. Я бы предпочел не писать сам метод .ajax и использовать javascript для управления значениями кнопок. Любые предложения о том, как решить эту проблему с помощью стандартных тегов FormHelper? Большое спасибо заранее.

Ответы

Ответ 1

Вам следует попробовать сменить submit_tag на button_tag, что-то вроде этого:

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

Ответ 2

Если используется simple_form:

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

Ответ 3

Быстрый совет по созданию кнопки button_to с помощью html_safe и 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 %>