私のコードは次のようになります。このようなjquery/jsを使用してフォームを送信した後に遅延ページリダイレクト?
<input class="toBasketButton" type="submit" value="">
私のコードは次のようになります。このようなjquery/jsを使用してフォームを送信した後に遅延ページリダイレクト?
<input class="toBasketButton" type="submit" value="">
何か?
$(function(){
$('input.toBasketButton').click(function(event){
event.preventDefault();
var button = this;
window.setTimeout(function(form){
$(form).submit();
}, 1000, $(button).closest('form'));
});
});
<form action="" method="post">
<input class="toBasketButton" type="submit" value="Submit">
</form>
あなたは、あなたがしたいまであなたがページを離れることはありません意味jQueryのajaxFormプラグイン(http://jquery.malsup.com/form/)
これは、AJAXを通じてフォームを送信することができますが、使用して試みることができます。こうすることで、JSやPHP経由でいつものようにリダイレクトを済ませた後で、必要な作業を実行して、ユーザーにサブミットさせることができます。ユーザーはその違いを知ることはできません。遅延は同じように見えますが、送信クリックとリダイレクトの間ですべてのコントロールを得ることができ、必要なものを実行することができます。
例:
$(form).ajaxForm({
dataType: "json",
success: myFormSubmissionIsDone,
url: "/some/controller/action/",
type: "post", timeout: 30000
});
function myFormSubmissionIsDone() {
// This and that, whatever you need to do...
window.location = "/newlocation/redirecting/now/yay";
}
私は質問を理解していない、申し訳ありません - ディレイページがリダイレクト何ですか?あなたは何とかリダイレクトしたいのですか、またはフォームの送信を傍受してから何かをすることを求めていますか? – Rup
@Rup別のページの読み込みが遅れてからフォームを送信したい – easyrider
実際の質問を含めるのを忘れてしまった。あなたはちょうど1行のコードを掲示しました。 –