2011-11-15 10 views
20

これにはいくつか類似の質問がありますが、全く同じではありません。ページ提出前に直接JavaScriptコードを実行

ページが送信される(つまりPOSTされる)前に、いくつかのJSを実行するために使用できるイベントがあるかどうかを知りたいです。

答えて

22

フォームで作業している場合は、onsubmitイベントを使用できます。 jQueryのを使用して

あなたは

$('#myform').submit(function() { 
    // your code here 
}); 
+7

この方法は私にとっては決して役に立たない。フォームはいつものように提出するだけです。 – americanknight

+1

@ americankanknightボタンアクションを停止するには、preventDefaultメソッドを使用する必要があります。 $( '#myform')。submit(function(e){ e。preventDefault(); }); – ius

3

ではい、あなたは、フォーム上のonsubmitイベントで使用できることを行うことができます。

(jQueryのなし)純粋なHTMLで、使用することができます:ここ

<form onSubmit="mySubmitFunction()"> 
    ... 
</form> 

詳細:http://www.w3schools.com/jsref/event_form_onsubmit.asp

5

あなたはsubmitイベントにイベントハンドラをバインドすることができます(以下のコードは、あなたがidを持っていると仮定し)あなたのform上:

document.getElementById("someForm").onsubmit = function() { 
    //Do stuff 
}; 
29

このような何か?

<form onsubmit="do_something()"> 

function do_something(){ 
    // Do your stuff here 
} 

あなたは以下のコードのようなreturnを置く場合は、do_something()関数からfalseを返すことによって、フォームの送信を防ぐことができます。

<form onsubmit="return do_something()"> 

function do_something(){ 
    // Do your stuff here 
    return true; // submit the form 

    return false; // don't submit the form 
} 
関連する問題