Jquery datepicker - 手动触发

Ond*_*rej 12 jquery datepicker jquery-ui-datepicker

我在我的一个项目中使用了jquery datepicker,我需要通过单击输入区域旁边的超链接来触发datepicker.

不幸的是,由于某些原因我不能让这个工作.

我有一个输入区域和超链接我想在输入区域中触发日历.

<input type="text" id="date" /><a href="#" class="trigger">Show calendar</a>
Run Code Online (Sandbox Code Playgroud)

我试图想出一个Javascript代码,例如:

$(".trigger").click(function(){ 
$("#date").datepicker("show"); 
}); 
Run Code Online (Sandbox Code Playgroud)

正如之前讨论中的其他人建议使用SHOW方法弹出日历.但它不起作用.

代码如

$(function() {
$("#date").datepicker();
});
Run Code Online (Sandbox Code Playgroud)

工作正常,但只需单击输入区域(而不是触发超链接).

有没有人有任何想法或建议如何让这个工作?据我所知,我不是唯一追逐解决方案的人.

非常感谢你!;)

小智 20

您的click()事件是否在函数中jQuery(document).ready()运行?

因为jQuery将递归地将click事件处理程序分配给您在页面加载时定义的每个类.

否则,如果它位于文档就绪函数之外,它将不会执行任何操作,如下所示:

$(function() {
    $("#date").datepicker();
    $(".trigger").click(function(){
        $("#date").datepicker("show");
    }); 
});
Run Code Online (Sandbox Code Playgroud)

另外我假设你加载了jQuery并在HTML文档的头部加载了datepicker插件:)