Ruby3でRailsを使用していますが、disableおよびCSSクラス_form.submit
_のフォームがAJAX送信され、AJAX HTTPリクエストが完了するまで( JavaScript用のデフォルトのjQueryフレームワークを使用しています)。
私のフォームは次のとおりです。
_<%= form_for(@article, :remote => true) do |form| %>
...
<%= form.submit(nil, {:id => 'button_id', :class => 'button_class'}) %>
<% end %>
_
どうすれば「共通」/「良い」/「適切な」方法でそれを作ることができますか?
Rails jQueryブリッジ(jquery_ujs.js)コードには、実際にはこのためのヘルパーがあります。
<%= form.submit "Save", id: "button_id", class: "button", disable_with: "Submitting..."
ボタンのテキストが指定した値に置き換えられます。
http://api.rubyonrails.org/classes/ActionView/Helpers/FormTagHelper.html#method-i-submit_tag を参照してください。
APIの変更:Renanが以下のコメントで示唆しているように、 Rails 4ベータ版disable_with
オプションに非推奨の通知があります。データ属性に変更する必要があります。
<%= form.submit "Save", id: "button_id", class: "button", data: {disable_with: "Submitting..."} %>
これは、Railsのすべての最近のバージョンで機能するはずです。これは、オプションがとにかく行ったことです。したがって、Railsにアップグレードするときに、修正する非推奨通知が1つ少なくなります。 = 4. :)