0

「フォームが送信された場合」、新しいタブを開いたユーザーを特定の URL にリダイレクトするようなものを作成したいと思います。これを JavaScript 関数として書きたいのですが、何か提案はありますか?

4

4 に答える 4

1

使用on('submit', function () { ... }):

$("form").on("submit", function () {
     window.location = "/redirectUrl";
     return false; // prevent refreshing page
});

JSFIDDLE

ほとんどのブラウザーは新しいタブを開くことをブロックするため、ユーザーを新しいページにリダイレクトするだけです。


しかし、HTML でそれを行うことができます。

<form target="_blank" action="/redirectUrl"></form>

JSFIDDLE

于 2013-08-12T14:52:15.887 に答える
1

フォームタグに target 属性を書くことができます:

<form target="_blank"></form>
于 2013-08-12T14:52:59.423 に答える
0
$('form').on('submit', function() {

    window.open('someurl');

    // Some code to do the submit

    // Prevent the submit
    return false;
});

REF window.open

于 2013-08-12T14:53:44.767 に答える
0

私があなたを理解していれば、特定の URL で新しいタブを開く必要があります。これは、フォーム送信の通常の動作の一部です。

主要なブラウザーは、ユーザー以外のクリック イベントで新しいウィンドウ/タブを開くことをブロックします。したがって、送信ボタンに追加のイベントをバインドする必要がありますが、送信が成功したかどうかを制御することはできません(たとえば、jquery.validator のようなバリデータを使用する場合)。

$("#myform input[type=submit]").click(function() {
  window.open("http://www.site.com/");
});
于 2013-08-12T14:58:20.183 に答える