viernes, 27 de septiembre de 2013

Múltiples Instancias .datepicker()

Estaba en el trabajo, arreglando unas cosas propias del mismo.

Un cliente había pedido que fuera posible asignar una determinada fecha para determinada función.

Recordé enseguida a "DATEPICKER", un sencillo pero potente Widget de JavaScript capaz de mostrarnos calendarios para poder hacer uso de las fechas.

Pero me encontré con un problema: cómo puedo usar múltiples instancias en el mismo archivo ?

La solución primera que se me ocurrió fue modificar el script directamente para poder agregar las instancias necesarias. Pero luego pensé: y si no son dos, sino 20, 50, 100, 1000 instancias las que necesito ?

Empecé a googlear para encontrar una solución, y no parecía ser tan obvia como después me dí cuenta.

Para no hacerles el cuento largo les platico:

La funcionalidad y declaración básica de DATEPICKER es a través de ID's (id=""), pero recordemos que los ID's son eso, identificadores únicos.

Qué hacemos cuando queremos que varios elementos estén concentrados en el mismo grupo ? Usamos CLASES (class="").  Y ahí está la solución.

Declaramos nuestros INPUT's donde queremos usar DATEPICKER, dándoles la misma clase:

<input type="text" id="uno" class="class_datepicker" />
<input type="text" id="dos" class="class_datepicker" />
<input type="text" id="tres" class="class_datepicker" /> 

Luego, en el uso de la función:

$(function() { 
          $('.class_datepicker').each(function(){
                     $(this).datepicker();
});
});

Donde class_datepicker es el nombre que tú le quieras dar a la clase.

Así de simple.

Así de sencillo.

Espero les sirva ésta pequeña ayuda.

Saludos. Hasta la otra.

No hay comentarios:

Publicar un comentario