Can anyone please tell me how to check bootstrap 3.0 modal status, is it open or closed using jQuery or javascript. I used following code but it works when you have opened a mod
try checking:
if($("#addMemberModal").data('modal') && $("#addMemberModal").data('modal').isShown ) {
console.log("Modal is open");
}
or
if( $('#addMemberModal').hasClass('in') ) {
console.log("Modal is open");
}
I used the following code for my AJAX Call. After a setTimeout i tried to close the model properly and used the is() method for doing so. Hope it helps somebody.
complete: function(){
setTimeout(function() {
// model
if($('#mdlNewOrder').is(':visible')) {
$('#mdlNewOrder').modal('toggle');
}
//buttons
$('#btn_closeNewOrder').prop("disabled", false);
$('#btn_NewOrder').prop("disabled", false);
// table reload
$('#table_patientlist').DataTable().ajax.reload(null, false);
}, 2800);
}
You can also use straight jQuery like this:
$('#myModal').is(':visible');
if the modal is opened in a form loaded by ajax you can use
$(document).on('hidden.bs.modal', '#photoModal', function () {
cancel_camera();
document.getElementById('PhotoPerson').innerHTML = '<img src="' + photoPerson + '"/>';
});*
you can refer to their page http://getbootstrap.com/javascript/#modals
$('#myModal').on('hidden.bs.modal', function (e) {
// do something...
})
show.bs.modal
This event fires immediately when the show instance method is called. If caused by a click, the clicked element is available as the relatedTarget property of the event.
shown.bs.modal
This event is fired when the modal has been made visible to the user (will wait for CSS transitions to complete). If caused by a click, the clicked element is available as the relatedTarget property of the event.
hide.bs.modal
This event is fired immediately when the hide instance method has been called.
hidden.bs.modal This event is fired when the modal has finished being hidden from the user (will wait for CSS transitions to complete). loaded.bs.modal This event is fired when the modal has loaded content using the remote option.