2012-02-02 10 views
1

を提出扱う:jQueryのJSフォームが、私は次のjQueryを持って

$("form").submit(function() { 
    //DO STUFF HERE    
}); 

しかし、それは、このJavaScriptで

document.form1.submit() 

が起こっていることは、超簡単なようだ提出ハンドリング/キャッチ/検出していないです。私はそれが何かシンプルか愚かなものだと確信しています。前もって感謝します。

+1

JQuery、Jquery、JQueryではなく、「jQuery」です。 – meagar

答えて

0

jQueryのが唯一の送信ボタンをクリックしてのように、デフォルトのブラウザの動作をキャッチし、jQueryの自体によって追加されたイベント...

-1

は、フォーム要素のIDを指定して

のようにそのIDを使用
$("#formid").submit(function() { 
    //DO STUFF HERE    
}); 
+0

ここではどのように動作するかを見ることができますhttp://api.jquery.com/submit/ – themis

+0

これは、ハンドラをすべてのフォームの代わりに単一のフォームにバインドするだけで、問題は解決しません。 – Quentin

+0

どのようにすべてのフォームにそのクラスを使用してそれを適用するのですか? $( "。formclass"); submit(function(){ // DO STUFF HERE }); – themis

0

JavaScriptでフォームのサブミットメソッドを呼び出すと、フォームにアタッチされているイベントハンドラがバイパスされます。ユーザーがページを送信したときではなくフォームを送信すると起動します。

プログラマチックに送信するときは、イベントハンドラを手動で起動する必要があります。 jQuery submit methodはこれをあなたのために抽象化します。したがって、直接HTMLFormElementNodeではなく、submit()をjQueryオブジェクトに呼び出します。

jQuery('#form1').submit(); // Assuming you have a form with an id instead of the obsolete name attribute 
0

私もjQueryを使ってフォームを提出することをお勧め - とあなたのdocument.form1.submit()を置き換える:

$('#form1').submit(); 

これは、アクションがどのjavascriptのイベントをトリガかに関するブラウザの不整合の数を回避します。

関連する問題