Подтвердить что ты не робот

Как скрыть Bootstrap предыдущий модальный при открытии нового?

У меня есть такая проблема: у меня есть аутентификация, которая создается с использованием модов Bootstrap.

Когда пользователь открывает знак в модальном режиме, он может пойти на регистрацию модального (или другого). Итак, мне нужно закрыть предыдущий.

Теперь я закрываю их следующим образом:

$(document).ready(function(){
  $("a").click(function() {
  $("#login").hide();
  $("#sign_up").hide();
 })  
});

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

Может кто-нибудь подскажет, как проверить, какой модальный я нажимаю на ссылку и закрываю ее, когда вызываю другую? Есть ли универсальный способ закрыть предыдущий модальный?

4b9b3361

Ответ 1

Вы скрываете модальности Bootstrap с помощью:

$('#modal').modal('hide');

Высказывание $().hide() делает связанный элемент невидимым, но в отношении модального кода он все еще присутствует. См. Раздел "Методы" в Документация по форматам.

Ответ 2

Переключить оба модала

$('#modalOne').modal('toggle');
$('#modalTwo').modal('toggle');

Ответ 3

Лучшее, что я смог сделать, это

$(this).closest('.modal').modal('toggle');

Это получает модальный объект DOM, на который вы активировали событие (предполагая, что вы нажимаете кнопку). Получает ближайший родительский ".modal" и переключает его. Очевидно, что работает только потому, что он внутри модального щелчка.

Однако вы можете сделать это:

$(".modal:visible").modal('toggle');

Это получает модальный, который отображается (поскольку вы можете иметь только один открытый за раз) и запускает "переключатель". Это не будет работать без ": visible"