отправить форму в новом окне и перезагрузить текущее окно с новым URL-адресом

Я пытаюсь отправить форму в новом окне, и после отправки я перезагружаю текущее окно с новым URL-адресом. Ниже мой код.

<form action="http://www.example.com/submit/" method="get" name="myform" id="myform" target="_blank">
    <div>
        <div>Your Name:</div>
        <div>
            <input type="text" name="name" />
        </div>
        <div>
            <input type="image" src="http://www.example.com/submit_image.png" />
        </div>
    </div>
</form>
<script type="text/javascript">
    $(document).ready(function(){
        $('#myform').submit(function(){
            window.location.href = 'http://www.google.com';
        });
    });
</script>

Это нормально работает в Firefox и IE, но не в Google Chrome. Проблема в Chrome заключается в том, что он отправляет форму в новом окне, но не перезагружает текущее окно с новым URL-адресом.

Может ли кто-нибудь предложить решение для этого? Моя идея состоит в том, чтобы отправить эту форму в новом окне и перезагрузить текущее окно с другим URL-адресом.


person Narendra Vaghela    schedule 05.08.2013    source источник
comment
У тебя есть какие-нибудь ошибки..? Вы проверили консоль браузера.??   -  person Deepu    schedule 05.08.2013
comment
Да, я проверил это, но в консоли не было ошибки.   -  person Narendra Vaghela    schedule 05.08.2013


Ответы (2)


Пожалуйста, попробуйте этот код, он может быть вам полезен,

window.location.href = 'http://www.google.com';

заменить этим кодом

setTimeout(function(){document.location.href = "google.com";},500);
person Prashant Parekh    schedule 05.08.2013
comment
Это откроет новое окно. Но я хочу, чтобы www.xyz.com был в текущем окне. - person Narendra Vaghela; 05.08.2013
comment
Используйте этот код setTimeout(function(){document.location.href = google.com},500); - person Prashant Parekh; 05.08.2013
comment
благодарю вас. Пожалуйста, примите мой ответ .. для получения репутации. - person Prashant Parekh; 05.08.2013

Может быть, это вы хотите добавить

target='_blank'

И это должно выглядеть так

<form action="http://www.example.com/submit/" method="get" name="myform" id="myform" target="_blank" >
 <div>
    <div>Your Name:</div>
    <div>
        <input type="text" name="name" />
    </div>
    <div>
        <input type="image" src="http://www.example.com/submit_image.png" />
    </div>
</div>
</form>

Чтобы перезагрузить текущую страницу, используйте location.reload();

<script type="text/javascript">
    $(document).ready(function(){
        $('#myform').submit(function(){
         location.reload();  // window.location.href = 'http://www.google.com';
        });
    });
</script>
person Ravi    schedule 05.08.2013
comment
Да, я добавил это, и из-за этого атрибута форма отправляется в новом окне. Также код в событии отправки jquery работает нормально. Он перезагружает текущее окно. Но это не работает в Google Chrome. - person Narendra Vaghela; 05.08.2013
comment
Да, он отправляет данные в новом окне, но не перезагружает текущую страницу. - person Narendra Vaghela; 05.08.2013
comment
Нет, все еще не работает. Он открывает новое окно и фокусируется на новом окне. Не влияет на главное окно. - person Narendra Vaghela; 05.08.2013