Poner un calendario por encima de un dialog en Jquery

Después de tener mis funciones para hacer dialogs con Jquery listas empecé a programar los formularios de dentro, todo iba bien hasta que decidí añadir datepicker, el calendario de Jquery para seleccionar las fechas.

Al utilizar dialogs, el resto de la página se oscurece dejando la capa del dialog como última, si dentro de ese dialog introducimos un calendario, al mostrarte, debido a las reglas CSS aparecerá por debajo por lo que no se verá y no podremos trabajar con él.

La solución es fácil, he tenido que buscar en los CSS y tras no encontrar nada he decidido por añadir al archivo ui.datepicker.css el siguiente código que soluciona el problema.

#ui-datepicker-div {
  display: none;
  border: 1px solid #777;
  z-index: 9999; /*must have*/
}

Ahora ya me sale perfecto, tanto en firefox como en el explorer.

Artículos relacionados



Comentarios en Poner un calendario por encima de un dialog en Jquery

Hay 4 Comentarios en el artículo Poner un calendario por encima de un dialog en Jquery, ¿a qué esperas para dar tu opinión?


  1. CarolJohana dice:

    Hola ps mira que le agregue al css de la libreria la funcion pero me sigue saliendo debajo del div

    mmm en k se fallara

    gracias

  2. CarolJohana dice:

    Hola emilio lo que pasa es que en el jquery-ui-1.7.2.custom le modifique esto y me funciono perfecto despues del tiempo vovlio a salir de nuevo debajo del div mmmmm

    .ui-dialog { position: relative; padding: .2em; width: 300px; z-index:8888; }

    .ui-datepicker { width: 17em; padding: .2em .2em 0; z-index:9999; }

    en el jquery de mi pag declaro el datapiker
    y tengo una caja normal

    tu codigo que dice #ui-datepicker-div lo coloque en el css del datapiker pero nopis no sabes que sera maestro?

    • Emilio dice:

      Solo se me ocurre que exista otro #ui-datepicker-div en el fichero.. y que no lo esté teniendo en cuenta.

      Puedes intentar cambiar el número 9999 por otro más grande como 99999

Deja un comentario