simple_formでボタン押したときにconfirmを出す方法

Ruby on Rails3のポケットリファレンスや検索をしても出てこなかったので、試行錯誤した結果をここに書いておきます。
退会フォームを作っていたときに、確認のためのダイアログを出したかったんです。link_toメソッドからのやつで大概削除するから、そのときはconfirm出しやすいんだけれど、フォームのときはどうするんだ?と思ってたんだけれど、だいたいのところでは、

= f.button :submit, '退会する', confirm: '本当によろしいですか?'

って書いてあるんだけれど、これ動かないから。
正解はdata: {confirm: ‘〜’}でした。

= simple_form_for @user, wrapper: :table do |f|
  table
    = f.input :current_password, hint: '本人確認のため、入力お願いします'
    tr
      td
        |  
      td
        = f.button :submit, '退会する', data: {confirm: '本当によろしいですか?'}

30分以上悩んでしまった…。危うくJavaScriptでonSubmitとるか、onClickでなんとかするか…とかまでやりそうになったけれど、「しかしRailsでもう既にconfirmの情報はあるのに廃止されているわけはないだろうしなー」と思って実験してみた甲斐があった…。


カテゴリー JavaScript, Ruby, Ruby on Rails | タグ   | パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です