Обновление главной страницы после закрытия модального окна - PullRequest
0 голосов
/ 23 октября 2009

На данной веб-странице у меня есть ссылка, которая открывает модальное окно с помощью Thickbox. В этом окне у меня есть форма, которую я использую для сохранения некоторых данных. После отправки формы я закрываю модальное окно. Теперь мой вопрос: могу ли я обновить главную страницу после закрытия модального окна?

Спасибо.

Ответы [ 5 ]

0 голосов
/ 27 апреля 2011

Вы можете легко сделать это с помощью плагина tinybox:

http://sandbox.scriptiny.com/tinybox2/

var parentWindow = window;
$('#submit-deed-button').click(function() { 
    TINY.box.show({iframe:'submit_deed.html', closejs:function(){parentWindow.location.reload()}, post:'id=16',width:385,height:470,opacity:20,topsplit:3, boxid:'tinybox_container'}) 
});

Ключ должен передать в родительское окно функции как JS-переменную, после чего вы вызываете location.reload () для этого объекта

0 голосов
/ 05 января 2010

Если вы используете facebox, просто добавьте window.location.reload (); вокруг линии 148, так что вы получите что-то вроде ... close: function () { $ (Документ) .trigger ( 'close.facebox'); window.location.reload (); вернуть ложь }

Если вы все еще используете Thickbox, я уверен, что это так же просто. Выполните поиск «закрыть» и добавьте код.

0 голосов
/ 23 октября 2009

Предположим, это div, который вы показываете в модальном режиме. Вы должны позвонить tb_remove(), чтобы закрыть модальное окно. Так что просто используйте location.reload(); перед этим вызовом.

<div id="modalContent" style="display:none">
  <form>
    ...
  </form>
  <p style="text-align:center">
    <input type="submit" id="Login"value="Click to close"
      onclick="window.opener.location.reload();tb_remove()" />
  </p>
</div>
0 голосов
/ 24 октября 2009

На самом деле Thickbox больше не поддерживается, поэтому может быть лучше использовать другое модальное окно. При этом, я знаю, Facebox позволяет вам связывать окно открытия и закрытия событий, как это:

$(document).bind('close.facebox', function() {
 // do something here
})
0 голосов
/ 23 октября 2009

Позвоните после отправки формы и до закрытия окна:

window.opener.location.reload();
...