私はdata-remote=true
オプションで提出したいフォームを持っています。しかし、私はcreate action return jsonを持って、そのページにすでに存在するjavascriptで処理しています。 form_forタグでインラインでコールバックを設定できますか?これに似たdata-remote trueコールバックを定義する
何か:
=form_for @foo,:remote => true, :success => "my_js_stuff" do |f|
私はdata-remote=true
オプションで提出したいフォームを持っています。しかし、私はcreate action return jsonを持って、そのページにすでに存在するjavascriptで処理しています。 form_forタグでインラインでコールバックを設定できますか?これに似たdata-remote trueコールバックを定義する
何か:
=form_for @foo,:remote => true, :success => "my_js_stuff" do |f|
レールフォームヘルパーをオーバーライドしなくても可能かどうかはわかりません。しかし、jquery ajaxイベントを使用してバインドできます。例:
$('form#sign-up-form').ajaxError(function(event, request, settings) {
//do some stuff on error
})
$('form#sign-up-form').bind('ajax:success', function(evt, data, status, xhr){
//do some stuff on success
})
あなたはfooのコントローラのcreate.js.erbおよび/またはupdate.js.erbを定義することをお勧めします。それはあなたが実行するjavascriptを返します。
そこから、すでにページに存在するjavascriptを実行することができます。
良い考え。 +1成功した場合に役立ちます。エラーの場合は助けにならないでしょう。 – Hendrik