entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

2votos

calendario y jquery

Buenas, resulta que necesito un componente calendario en mi jsp y no consigo que me funcione este codigo jquery:

<script type="text/javascript">jQuery(function($){
$("#fechaCelebracion").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','Sáb'],
        dayNamesMin: ['Do','Lu','Ma','Mi','Ju','Vi','Sá'],
        weekHeader: 'Sm',
        dateFormat: 'dd/mm/yy',
        firstDay: 1,
        isRTL: false,
        showMonthAfterYear: false,
        yearSuffix: ''};
    $("#fechaCelebracion").setDefaults($.datepicker.regional['es']);
});    

$(document).ready(function() {
   $("#fechaCelebracion").datepicker();
 });
</script>

y el html es muy simple:

<label> Fecha de celebración</label>
<input type="text" name="fechaCelebracion" id="fechaCelebracion" readonly="readonly" size="12" />

Para cargar las librerias y dependencias de jquery utilizo el CDN de google, invocandolo en un fichero /common/header.jsp de esta forma:

<script type="text/javascript"
    src='http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js'></script>
<script type="text/javascript" 
          src=' http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.14/jquery-ui.min.js '>         </script>
<link rel="stylesheet" type="text/css" 
href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.14/themes/base/jquery-ui.css">               </link>

Me da el siguiente error:

275TypeError: 'undefined' is not an object (evaluating '$("#fechaCelebracion").regional')

Que estoy haciendo mal?

gracias por las respuestas, de jquery estoy muy pegado

2 Respuestas

2votos

Peter Puntos150460

Te pongo el HTML completo de como debería de ser.

<html>
<head>
<script type="text/javascript" src='http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js'></script>
<script type="text/javascript" src=' http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.14/jquery-ui.min.js '></script>
<link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.14/themes/base/jquery-ui.css"></link>

</head>
<body>

<label> Fecha de celebración</label><br />
<input type="text" name="fechaCelebracion" id="fechaCelebracion" readonly="readonly" size="12" />

<script type="text/javascript">jQuery(function($){

$.datepicker.setDefaults($.datepicker.regional['es']);

    $("#fechaCelebracion").datepicker({
        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','Sáb'],
        dayNamesMin: ['Do','Lu','Ma','Mi','Ju','Vi','Sá'],
        weekHeader: 'Sm',
        dateFormat: 'dd/mm/yy',
        firstDay: 1,
        isRTL: false,
        showMonthAfterYear: false,
        yearSuffix: ''});
    });

    </script>

</body>
</html>

Puedes tener todos los que quieras, el problema es que no estabas especificando el datepicker, solo ponías regional. Compara tu primer código con mi ejemplo y veras donde esta el fallo.

Saludos.

1voto

alonso_isidoro_roman comentado

perfecto, gracias!

1voto

Me respondo a mi mismo, al parecer hay que usar si o si un componente texto con el id datepicker, de la siguiente forma:

<input type="text" name="datepicker" id="datepicker" readonly="readonly" size="12" />

<script type="text/javascript">jQuery(function($){
$.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','Sáb'],
        dayNamesMin: ['Do','Lu','Ma','Mi','Ju','Vi','Sá'],
        weekHeader: 'Sm',
        dateFormat: 'dd/mm/yy',
        firstDay: 1,
        isRTL: false,
        showMonthAfterYear: false,
        yearSuffix: ''};
    $.datepicker.setDefaults($.datepicker.regional['es']);
});    

        $(document).ready(function() {
           $("#datepicker").datepicker();
        });
</script>

No lo entiendo, que pasa si necesito dos componentes de fechas?

1voto

Peter comentado

No es así, ya te respondí con un ejemplo :)

Saludos.

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta