Как вы закрываете jQuery Simplemodal? - PullRequest
23 голосов
/ 01 июня 2009

Я хочу закрыть окно Simplemodal из функции JavaScript, которая вызывается автоматически после отправки формы и получения результатов (AJAX) с использованием ASP.Net MVC. Как закрыть jQuery Simplemodal?

Я открыл это так:

$("#popup").modal()

Ответы [ 4 ]

66 голосов
/ 01 июня 2009

У вас есть 2 варианта:

1) Поместите класс закрытия (simplemodal-close) на элемент в ваших модальных данных, и SimpleModal автоматически свяжет функцию закрытия с событием click для этого элемента.

Взяв приведенный выше пример, вы захотите:

<div id="foo" style="display:none">
  <p>Form HTML</p>
  <span class="simplemodal-close">Close</span>
</div>

2) Если вы хотите закрыть диалоговое окно программно, позвоните:

$.modal.close();

НТН!

-Eric (автор SimpleModal)

7 голосов
/ 01 июня 2009

Просто позвоните близко.

$("#popup").close();

Если вы делаете это для завершения ajax, вам нужно добавить обратный вызов. Вы можете проверить наличие ошибок.

var foo = $("#popup").modal();

$.ajax({url:url, success:function(){
    foo.close();
}});
4 голосов
/ 16 февраля 2015

Если ни одно из вышеуказанных решений не работает, вы также можете попытаться вызвать событие нажатия кнопки закрытия (если оно находится внутри всплывающего элемента).

$( ".simplemodal-close" ).trigger( "click" );

или с ошибкой, с Javascript.

document.getElementById('closeModalButton').click();
1 голос
/ 15 октября 2010
$.modal.close();

или вы можете использовать следующую команду

setTimeout('goto_previous_page()', 1000);
...