Solía usar el cuadro de diálogo de JQuery UI, y tenía la open
opción, donde puede especificar algún código Javascript para ejecutar una vez que se abre el cuadro de diálogo. Hubiera usado esa opción para seleccionar el texto dentro del diálogo usando una función que tengo.
Ahora quiero hacer eso usando el modal de bootstrap. A continuación se muestra el código HTMl:
<div id="code" class="modal hide fade">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3>Modal header</h3>
</div>
<div class="modal-body">
<pre>
print 'Hello World'
Y en cuanto al botón que abre el modal:
<a href="#code" data-toggle="modal" class="btn code-dialog">Display code</a>
Traté de usar un botón de escucha del botón, pero el mensaje de alerta se mostró antes de que apareciera el modal:
$( ".code-dialog" ).click(function(){
alert("I want this to appear after the modal has opened!");
});
javascript
jquery
jquery-ui
twitter-bootstrap
modal-dialog
Mohamed Khamis
fuente
fuente
shown.bs.modal
El evento ocurre cuando el documento HTML contiene al menos una<div class="modal fade"><div class="modal-dialog"></div></div>
estructura.Respuestas:
Puede usar el evento mostrado / evento basado en lo que necesita:
Demostración: Plunker
Actualización para Bootstrap 3.0
Para Bootstrap 3.0 aún puede usar el evento mostrado, pero lo usaría así:
Vea los documentos de Bootstrap 3.0 aquí en "Eventos".
fuente
$("#code").on("shown.bs.modal", function(e) {})
para bootstrap 3.0.#code
refiere al selector jQuery, uno de los ingredientes básicos para jQuery: w3schools.com/jquery/jquery_selectors.asp$(document).on("shown.bs.modal", ...
para escuchar en generalno funcionará ... use
$(window)
en su lugarPara mostrar
Para esconderse
fuente
if( $('#code').is( e.relatedTarget ) ) { ... }
ya que tenía múltiples en la página.puede usar en
show
lugar deshown
hacer que la función se cargue justo antes de abrir modal, en lugar de después de abrir modal.fuente
Bootstrap modal expone eventos. Escucha el
shown
evento como estefuente
si alguien todavía tiene un problema, lo único que funciona perfectamente para mí usando (loaded.bs.modal):
fuente
Puede usar el código de abajo para mostrar y ocultar el modelo bootstrap.
y si desea ocultar el modelo, puede usar el siguiente código.
Espero que esta respuesta sea útil para tu proyecto.
fuente