2011-11-12 20 views
8

Estoy usando un jquery datepicker en uno de mis proyectos y necesito activar el datepicker haciendo clic en un hipervínculo que está al lado de mi área de entrada.Jquery datepicker - activación manual

Lamentablemente no puedo hacer que esto funcione por alguna razón.

Tengo un área de entrada y el hipervínculo Me gustaría activar un calendario en el área de entrada.

<input type="text" id="date" /><a href="#" class="trigger">Show calendar</a> 

He tratado de llegar a un código Javascript como:

$(".trigger").click(function(){ 
$("#date").datepicker("show"); 
}); 

Como alguien más en una de la discusión anterior sugiere utilizar un método SHOW para realizar el calendario emergente. Pero no funciona.

Código como

$(function() { 
$("#date").datepicker(); 
}); 

funciona bien, pero con sólo hacer clic en un área de entrada (no en la activación de hipervínculo).

¿Alguien tiene alguna idea o sugerencia de cómo hacerlo funcionar? Porque, por lo que yo sé, no soy el único que persigue la solución.

¡Muchas gracias! ;)

+0

vea aquí - la mejor respuesta a la pregunta http://stackoverflow.com/questions/2198741/jquery-uiteddatepicker-making-a-link-trigger-datepicker –

Respuesta

15

¿Está su función de evento click() en la función jQuery(document).ready()?

Porque jQuery asignará de forma recursiva el controlador de eventos click a cada clase que haya definido cuando se cargue la página.

De lo contrario, no va a hacer nada si está sentado fuera de la función de lista de documentos, así:

$(function() { 
    $("#date").datepicker(); 
    $(".trigger").click(function(){ 
     $("#date").datepicker("show"); 
    }); 
}); 

También asumiremos que tiene jQuery y el plugin cargado planificador de evento cargado en la cabeza del documento HTML :)

+0

Sí, lo siento, tomé esa parte por sentado, así que no es incluido en mi ejemplo. La secuencia de comandos JS comienza con $ (documento) .Ready (función() {..... Pero aún no funciona :( – Ondrej

+0

¡Ah, acabo de probar su solución añadida y está funcionando como un amuleto! ¡Muchas gracias!;) – Ondrej

1

utilizo este:

$(".ui-datepicker-current-day").trigger("click");