私はフォームを持っている:私は電子メールで、提出ブトン、そのポストをクリックするとjQueryのアヤックス自体への投稿の代わりに、スクリプト
function emailSubmit(){
$.ajax({
type: "POST",
url: "mysitesip/addemail.php",
data: {
email: $("#email").val()
},
success: function (data) {
$('#success').html(data);
}
}); // end Ajax
}
:
<form name="emailform" id="emailform" onsubmit="emailSubmit()" method="post"><div>
<input type="text" id="email" name="email" value="">
<input class="btn" type=submit value="Submit"></div>
</form>
はここemailSubmit()ですaddemail.phpではなく、アドレスをパラメータとして使用して、ページを更新しますか?なぜこうなった?私がmethod = "post"を取り除くと、フォームはGETリクエストを自分自身に出すが、正しい電子メールをパラメータとして使う。 .ajaxメソッドは、そのタイプがPOSTであることを明確に述べているので、これは私にとって非常に混乱しています。フォームの「メソッド」を変更すると、emailSubmit()の投稿が変更されるのはなぜですか?
.ajax呼び出しは、別のページで非常によく似た使い方からそのまま受け継がれ、うまく動作します。
(私は「それがPOSTしている」または私はこれらの事を見て放火犯を使用しています、「GETingされる」と言うとき)
私はこれを行いました:$( "#emailform")。送信( \t \t \t function emailSubmit(){...});戻り値falseの関数を終了することを含みます。そしてonsubmit属性を取り除きました。しかし何も変わっていない。どうして? –
(その間、私はこの問題を抱えている他の人たちのために働いたonsubmitを返しただけです) –