example español ejemplos bootstrap jquery datepicker

español - Se muestran jQuery datepicker años



jquery datepicker format (8)

¿Por qué no mostrar los cuadros de selección de año o mes?

$( ".datefield" ).datepicker({ changeMonth: true, changeYear: true, yearRange:''-90:+0'' });

Con jQuery datepicker, ¿cómo se puede cambiar el rango de año que se muestra? En el sitio jQuery UI dice que el valor predeterminado es "10 años antes y después de que se muestre el año actual". Quiero usar esto para una selección de cumpleaños y 10 años antes de hoy no es bueno. ¿Se puede hacer esto con jQuery datepicker o tendré que usar una solución diferente?

enlace a la demo de datepicker: http://jqueryui.com/demos/datepicker/#dropdown-month-year


Añadiendo a lo que se publicó @ Shog9, también puede restringir las fechas individualmente en la función beforeShowDay: callback.

Usted proporciona una función que toma una fecha y devuelve una matriz booleana:

"$(".selector").datepicker({ beforeShowDay: nationalDays}) natDays = [[1, 26, ''au''], [2, 6, ''nz''], [3, 17, ''ie''], [4, 27, ''za''], [5, 25, ''ar''], [6, 6, ''se''], [7, 4, ''us''], [8, 17, ''id''], [9, 7, ''br''], [10, 1, ''cn''], [11, 22, ''lb''], [12, 12, ''ke'']]; function nationalDays(date) { for (i = 0; i < natDays.length; i++) { if (date.getMonth() == natDays[i][0] - 1 && date.getDate() == natDays[i][1]) { return [false, natDays[i][2] + ''_day'']; } } return [true, '''']; }


Perfecto para los campos de fecha de nacimiento (y lo que uso) es similar a lo que dijo Shog9, aunque voy a dar un ejemplo más específico de DOB:

$(".datePickerDOB").datepicker({ yearRange: "-122:-18", //18 years or older up to 122yo (oldest person ever, can be sensibly set to something much smaller in most cases) maxDate: "-18Y", //Will only allow the selection of dates more than 18 years ago, useful if you need to restrict this minDate: "-122Y" });

Espero que los futuros googlers encuentren esto útil :).


au, nz, ie, etc. son los códigos de país para los países cuyos días nacionales se muestran (Australia, Nueva Zelanda, Irlanda, ...). Como se ve en el código, estos valores se combinan con ''_day'' y se pasan a aplicar para ese día como estilo CSS. Los estilos correspondientes son de la forma que se muestra a continuación, que mueve el texto para ese día fuera del camino y lo reemplaza con una imagen de la bandera del país.

.au_day { text-indent: -9999px; background: #eee url(au.gif) no-repeat center; }

El valor ''falso'' que se transfiere con el nuevo estilo indica que actualmente no se puede seleccionar.


creo que esto también puede funcionar

$(function () { $(".DatepickerInputdob").datepicker({ dateFormat: "d M yy", changeMonth: true, changeYear: true, yearRange: ''1900:+0'', defaultDate: ''01 JAN 1900'' });


lo que nadie más ha puesto es que también puede establecer intervalos de fechas codificadas:

por ejemplo:

yearRange: "1901:2012"

aunque puede ser aconsejable no hacerlo, es una opción que es perfectamente válida (y útil si está buscando legítimamente un año específico en un catálogo, como "1963: 1984").


Si miras un poco la página de demostración, verás una sección de "Restricción de fechador". Use el menú desplegable para especificar la Year dropdown shows last 20 years " Year dropdown shows last 20 years " y presione la fuente de vista:

$("#restricting").datepicker({ yearRange: "-20:+0", // this is the option you''re looking for showOn: "both", buttonImage: "templates/images/calendar.gif", buttonImageOnly: true });

Deberá hacer lo mismo (obviamente cambiando -20 a -100 o algo así).


$("#DateOfBirth").datepicker({ yearRange: "-100:+0", changeMonth: true, changeYear: true, });

yearRange: ''1950: 2013'', // especificando un rango de año codificado o de esta manera

yearRange: "-100: +0", // últimos cien años

Le ayudará a mostrar el menú desplegable para la selección de año y mes.