Javascript отправить форму и перенаправить текущую страницу - PullRequest
0 голосов
/ 30 марта 2012

Я пытаюсь отправить форму в новое окно и перенаправить текущее окно, но оно не работает. мой код:

    function submit() {
    document.checkout_confirmation.submit();
    setTimeout(window.location = 'http://google.nl', 1000);
    }

когда я выполняю этот код, он только перенаправляет страницу и не отправляет из. я делаю это неправильно или это невозможно? Не стесняйтесь спрашивать, если в моем вопросе отсутствуют какие-либо детали Заранее спасибо

1 Ответ

3 голосов
/ 30 марта 2012

Правильнее всего сделать так, чтобы ваш сервер перенаправлял пользователя после успешной отправки.Что если что-то в форме неверно?Вы не хотите перенаправлять в этом случае, и вы не можете просто доверять свой код JavaScript для проверки (поскольку он может быть отключен).См. Опубликовать / Перенаправить / Получить .

Кроме того, вы используете setTimeout неправильно, не то чтобы он работал, когда вы уже отправляете браузер куда-то еще через submit () (естьЯ полагаю, всегда существует вероятность того, что ваша форма запускает только других слушателей "submit" и отправляет через Ajax).Это должно выглядеть так:

setTimeout(function() {
    window.location = 'http://google.nl/';
}, 1000);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...