2010-10-07 59 views
6

我是新来的jquery,并希望开始datepicker焦点。如何启动焦点的jquery datepicker

我的第一个文本框是一个日期字段,我试图用javascript给出盒子焦点,但是除非我点击页面上的其他地方,然后通过单击框内的单击来给它指定焦点,否则日期选择器将不会出现。

有没有办法启动带有焦点的日期选择器,并且可能会在页面加载时立即启动窗口小部件,然后在用户离开框时放下焦点?

$("#date").datepicker({ 
    dateFormat: "mm-dd-yy" 
    }); 

回答

7

试试这个 - http://www.jsfiddle.net/wnUWQ/embedded/result

$(document).ready(function() { 
    $("#datepick").datepicker({ 
     dateFormat: "mm-dd-yy" 
    }); 
    $("#datepick").focus(function() { 
     $("#datepick").datepicker("show"); 
    }); 
    $("#datepick").focus(); 
}); 

编辑: 的$(document)对象的.ready()功能是当DOM在浏览器中完全加载解雇。首先,我们将datepicker附加到input,然后附上一个显示datepicker的事件处理程序,最后我们将焦点放在输入上。

这都可能是chained成一条线,如:

$(document).ready(function() { 
    $("#datepick").datepicker({ 
     dateFormat: "mm-dd-yy" 
    }).focus(function() { 
     $("#datepick").datepicker("show"); 
    }).focus(); 
}); 
+0

Pink Floyd的,你达人!非常感谢! – jim 2010-10-07 22:22:18

+0

为什么我们现在不得不等待10分钟才能接受答案? – jim 2010-10-07 22:22:45

+0

大概给人们时间来阐述答案 - 正如我现在所做的那样... ;-) – 2010-10-07 22:29:43