Мне нужно отправить форму и перенаправить родительскую страницу при отправке формы в необычном окне

#javascript #jquery #forms #fancybox

#javascript #jquery #формы #fancybox

Вопрос:

Это код формы, указанный на странице всплывающего окна fancybox iframe.

Мне нужно закрыть это всплывающее окно и перенаправить родительскую страницу на

http://luxuryresortstayvouchers.com/newdesign/?p=list.php

при нажатии кнопки отправки.

следующая функция эффективно закрывает всплывающее окно fancybox, но родительская страница не перенаправляется в нужное место.

 function closeMeUp()
{
parent.$.fancybox.close();
}




    <form action=""http://luxuryresortstayvouchers.com/newdesign/?p=list.php method="post" target="_parent" class="form_class" enctype="multipart/form-data" >

        <input class="vouch_num" type="text"  placeholder="Checkin date" maxlength="25" size="50" id="datepicker" />
        <input class="vouch_num" type="text"  placeholder="Checkout date" maxlength="25" size="50" id="datepicker2" />
        <br />
        <input type="button" id="ok" class="submit_but" value="Submit" onClick="closeMeUp();" />
        <input type="button" id="cancel" class="cancel_but" value="Cancel" />

    </form>
  

Любая помощь приветствуется.

Спасибо.

Комментарии:

1. Ваш ввод имеет тип «кнопка». Разве это не должно быть «отправить»?

Ответ №1:

Вы можете использовать parent.window.location.href свойство внутри onsubmit атрибута вашего (iframed) form , например :

 <form id="login_form"
onsubmit="javascript:parent.window.location.href='http://luxuryresortstayvouchers.com/newdesign/?p=list.php';" > 

...
</form>
  

Обратите внимание, что вам не нужно принудительно закрывать fancyBox, поскольку перенаправление страницы выполнит эту работу.

Также обратите внимание, что если вы закроете fancyBox вручную (без отправки формы), родительская страница не будет перенаправлена.

См. JSFIDDLE