2012-03-11 14 views
2

Malsup's JQuery Form pluginは、ajaxyfyingのフォームに非常に便利です。しかし、私は成功とエラーのコールバックで送信イベントが発生したターゲット要素を参照することができません。のthisキーワードは、DOM要素ではなくajaxFormオブジェクトを参照します。Malsupのjquery Ajaxフォームプラグインのコンテキスト

私のページにはたくさんの小さなフォームがあります。リクエストに対する受け入れボタンと拒否ボタンのように、私はajaxを使用してそれらのフォームを提出したいと思います。それが完了したら、DOMからそのフォームを削除し、 "Request Successful!"というメッセージを表示したいとか、ぐらい。しかし、私は実際にフォームを提出したターゲットを見つけることができません。

すべてのコールバックのコンテキストになるcontextオプションを渡すことができます。その場合でも、送信イベントが発生した要素を参照する方法がわかりません。

ありがとうございます。

答えて

3

コンテキストにターゲットを設定するbeforeSubmit関数を渡すことができます。

$('form').ajaxForm({ 
    beforeSubmit: function(arr, $form, options){ 
     options.context = $form; 
    } 
    //Rest of the options and callbacks 
}); 
0

ない、これは誰も助けになるが、これは、私はそれが動作するようになった方法であるかどうかわから:

HTML:

<form action="/route/controller" method="post" class="ajaxForm" data-target="#ajaxContainer_1"></form>

JS:

$(function() { $('.ajaxForm').ajaxForm({ beforeSubmit: function(arr, $form, options){ options.target = $form.data('target'); }, delegation: true, resetForm: true }); });

関連する問題