我一直在寻找一个体面的jQuery插件,可以处理日期和时间。核心UI DatePicker是伟大的,但不幸的是,我需要能够花时间在以及。

我发现了一些让DatePicker处理时间的小技巧,但它们看起来都很不优雅,谷歌也没有任何好的结果。

有一个很好的jQuery插件选择日期和时间在一个单一的UI控件与可用的界面?


当前回答

我使用数据采集器的最佳体验是基于原型的随时随地。我知道这不是jQuery,但对于您来说,折衷一下还是值得的。我完全不知道原型,但它仍然很容易操作。

我发现了一个警告:它在某些浏览器上不向前兼容。也就是说,它不能在Chrome上的新版本原型上运行。

其他回答

只是为了补充这里的信息,the Fluid Project有一个很好的wiki文章,概述了大量的日期和/或时间选择器。

@David,谢谢你的推荐!@fluid_chelsea,我刚刚发布了Any+Time(TM)第三版。它使用jQuery而不是Prototype,并且有一个很大的改进的界面,所以我希望它现在能满足你的需求:

http://www.ama3.com/anytime/

任何问题,请通过我网站上的评论链接让我知道!

我们很难找到一个我们想要的工作方式,所以我写了一个。我维护源代码,修复bug,并提供免费支持。

http://www.yart.com.au/Resources/Programming/ASP-NET-JQuery-Date-Time-Control.aspx

不是jQuery,但它工作得很好,日历与时间:JavaScript日期时间选择器。

我只是绑定点击事件弹出它:

$(".arrival-date").click(function() {
    NewCssCal($(this).attr('id'), 'mmddyyyy', 'dropdown', true, 12);
});

这是一些代码,我用来让用户选择一个 Datetimepicker,设置datetime,并拥有 其他datetimepicker添加一分钟到该时间。

我需要这个自定义药物控制....

总之,我觉得既然我能帮到别人 在网上找不到答案…

(至少不是一个完整的答案)

请记住,60000的增加,增加了一分钟。 (60 * 1000毫秒)

$('.frdtPicker').datetimepicker({
        onClose: function(dateText, inst) {
            var endDateTextBox = $('.todtPicker');
            if (endDateTextBox.val() != '') {
                var testStartDate = new Date(dateText);
                var testEndDate = new Date(endDateTextBox.val());
                if (testStartDate > testEndDate) {

                    var testStartDate = new Date(dateText).getTime() + 60000;
                    var testStartDate2 = new Date(testStartDate); 

                    endDateTextBox.datetimepicker('setDate', (new Date(testStartDate2)));
                }
            }
            else {
                var testStartDate = new Date(dateText).getTime() + 60000;
                var testStartDate2 = new Date(testStartDate);
                endDateTextBox.datetimepicker('setDate', (new Date(testStartDate2)));
            }
            $('.frdtPicker').val(dateText); //endDateTextBox.val());

        },
        onSelect: function(selectedDateTime) {
            var start = $(this).datetimepicker('getDate');
            $('.todtPicker').datetimepicker('option', 'minDate', new Date(start.getTime()));
        }
    });