ユーザーがフォームを送信しようとしたときに、AJAX リクエストを作成したいと考えています。ただし、応答を待ちたくなく (スクリプトをトリガーしたいだけです)、フォームをすぐに送信します (またはユーザーをリダイレクトします)。
私はこのようにしようとしました(jQuery経由):
$(document).ready(function()
{
$("#form").submit(function(e)
{
// save object reference
var form = this;
// prevent form submit
e.preventDefault();
// trigger ajax request
$.ajax({
url: 'ajax.php',
data: { ... },
cache: false
});
// submit form
form.submit();
// return false just in case
return false;
});
});
しかし、これは機能しません。なぜなら、フォームが直後に ( 経由で) 送信された場合、AJAX 要求は実際にはブラウザーによって送信されないform.submit()
からです。
私はここで少し困惑しています... AJAX リクエストを起動し、その後すぐにブラウザをリダイレクトする方法は本当にありませんか?