Мне нужно выполнить проверку только в том случае, если модальное окно открыто, потому что, если я его открою, а затем закрою, и я нажму кнопку, которая открывает модальный, он не работает, потому что он выполняет проверку jquery, но не отображается, потому что модальное окно было отклонено.
Итак, я хочу объявить jquery, если модальный режим открыт, поэтому я проверяю, возможно ли это?
<script>
$(document).ready(function(){
var validator =$('#form1').validate(
{
ignore: "",
rules: {
usu_login: {
required: true
},
usu_password: {
required: true
},
usu_email: {
required: true
},
usu_nombre1: {
required: true
},
usu_apellido1: {
required: true
},
usu_fecha_nac: {
required: true
},
usu_cedula: {
required: true
},
usu_telefono1: {
required: true
},
rol_id: {
required: true
},
dependencia_id: {
required: true
},
},
highlight: function(element) {
$(element).closest('.grupo').addClass('has-error');
if($(".tab-content").find("div.tab-pane.active:has(div.has-error)").length == 0)
{
$(".tab-content").find("div.tab-pane:hidden:has(div.has-error)").each(function(index, tab)
{
var id = $(tab).attr("id");
$('a[href="#' + id + '"]').tab('show');
});
}
},
unhighlight: function(element) {
$(element).closest('.grupo').removeClass('has-error');
}
});
}); // end document.ready
</script>
источник
_isShown
не такisShown
.Ты можешь использовать
Bootstrap добавляет
in
класс, когда модальное окно открыто, и удаляет его при закрытииисточник
shown.bs.modal
илиhidden.bs.modal
. Таким образом, когда ваш код события получает управление, вы абсолютно уверены, что диалог не находится в чувствительном состоянии.'in'
с'show'
на Bootstrap 4.Вы также можете напрямую использовать jQuery.
источник
Проверить, открыт ли модальный
$('.modal:visible').length && $('body').hasClass('modal-open')
Чтобы прикрепить прослушиватель событий
источник
Bootstrap 2, 3 Проверьте, открыт ли на странице любой модальный элемент:
совместимая версия Bootstrap 2, 3, 4+
Только Bootstrap 4+
источник
4.1.3
и он добавляетshow
класс вместоin
.не будет работать, если модальное окно не было показано ранее. Вам нужно будет добавить дополнительное условие:
итак ответ с учетом первого появления:
источник
Вы также можете использовать
источник
В bootstrap-modal.js v2.2.0:
источник
Зачем все усложнять, если это можно сделать с помощью простого jQuery, как показано ниже.
источник