Apenas comienzo con esta parte de js y necesito algo de ayuda. Mi pregunta es la siguiente, en mi proyecto debo usar el datepicker en varios lugares, pero es algo molesto poner el código en cada archivo para que éste quede en español y se le pueda dar una fecha inicial y otra final, ya que en varios archivos debo hacerlo así. Normalmente uso el datepicker poniendo el siguiente código al principio del archivo php.
Código Javascript:
Ver original
$.datepicker.regional['es'] = { closeText: 'Cerrar', prevText: '<Ant', nextText: 'Sig>', currentText: 'Hoy', monthNames: ['Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septiembre', 'Octubre', 'Noviembre', 'Diciembre'], monthNamesShort: ['Ene','Feb','Mar','Abr', 'May','Jun','Jul','Ago','Sep', 'Oct','Nov','Dic'], dayNames: ['Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado'], dayNamesShort: ['Dom','Lun','Mar','Mié','Juv','Vie','Sab'], dayNamesMin: ['Do','Lu','Ma','Mi','Ju','Vi','Sa'], weekHeader: 'Sem', dateFormat: 'yy-mm-dd', firstDay: 1, isRTL: false, showMonthAfterYear: false, yearSuffix: '', showWeek: true, firstDay: 1, changeMonth: true, changeYear: true, maxDate: "2y", minDate: "0D" } $(function(){ $.datepicker.setDefaults($.datepicker.regional["es"]); $(#datepicker).datepicker({ }); });
Pero como dije inicialmente, cuando lo uso debo poner éste código al principio de cada archivo y editar la parte de maxdate, mindate y otros parametros. Sé que se puede invocar el datepicker de la siguiente forma:
Código Javascript:
Ver original
$(function(){ $.datepicker.setDefaults($.datepicker.regional["es"]); $(#datepicker).datepicker({ maxDate: "2y", minDate: "0D" }); });
Pero así el datepicker obviamente queda en inglés y tendría que pasar los mismos parametros.
Mi pregunta es como puedo meter el codigo del datepicker en español en un archivo por ejemplo calendario.js e invocarlo, y pasar las variables que quiera modificar dentro de los parametros de una función. Intento creando dicho archivo y poner el código dentro de una funcion asi:
Código Javascript:
Ver original
function calendario(fecha_inicial, fecha_final,ubicacion){ $.datepicker.regional['es'] = { closeText: 'Cerrar', prevText: '<Ant', nextText: 'Sig>', currentText: 'Hoy', monthNames: ['Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septiembre', 'Octubre', 'Noviembre', 'Diciembre'], monthNamesShort: ['Ene','Feb','Mar','Abr', 'May','Jun','Jul','Ago','Sep', 'Oct','Nov','Dic'], dayNames: ['Domingo', 'Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado'], dayNamesShort: ['Dom','Lun','Mar','Mié','Juv','Vie','Sab'], dayNamesMin: ['Do','Lu','Ma','Mi','Ju','Vi','Sa'], weekHeader: 'Sem', dateFormat: 'yy-mm-dd', firstDay: 1, isRTL: false, showMonthAfterYear: false, yearSuffix: '', showWeek: true, firstDay: 1, changeMonth: true, changeYear: true, maxDate: fecha_inicial, minDate: fecha_final } $(function(){ $.datepicker.setDefaults($.datepicker.regional["es"]); $(ubicacion).datepicker({ changeMonth: true,changeYear: true,dateFormat: 'yy-mm-dd', maxDate: "1y", minDate: "0D" }); }); };
e invocarla en el input text asi:
Código HTML:
Ver original
<input type="text" selected id="datepicker1" onclick='calendario("1Y","0D","#datepicker1");'<? echo "$enable $required"; ?> style='width:60%; text-align: center;' class='caja' name="fecha_entrega" value="<?php if(isset($fecha_entrega)) {echo $fecha_entrega;}?>"/>
Pero obviamente, no me funciona, alguien me puede ayudar?.
muchas gracias.