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

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

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


我也遇到过同样的问题。我实际上是用服务器端编程开发的,但我做了一个快速搜索,试图帮助你找到这个。

看起来还好,没有看太多的源代码,但似乎是纯JavaScript。

看:

http://www.rainforestnet.com/datetimepicker/datetimepicker.htm

下面是演示页面链接:

http://www.rainforestnet.com/datetimepicker/datetimepicker-demo.htm

祝你好运


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

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


我最近研究了这个,还没有找到一个体面的日期选择器,也包括一个体面的时间选择器。我最终使用的是eyeecon的DatePicker,它有两个简单的时间下拉菜单。我很想使用Timepickr.js,看起来是一个很好的方法。


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

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

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


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


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

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


到目前为止,最好和最简单的DateTime选择器选项是http://trentrichardson.com/examples/timepicker/。

它是jQuery UI Datepicker的扩展,因此它将支持相同的主题,它的工作方式非常相似,语法相似,等等。这应该与jQuery UI打包imo。


我做了一个这样的函数:

function getTime()
{
    var date_obj = new Date();
    var date_obj_hours = date_obj.getHours();
    var date_obj_mins = date_obj.getMinutes();
    var date_obj_second = date_obj.getSeconds();

    var date_obj_time = "'"+date_obj_hours+":"+date_obj_mins+":"+date_obj_second+"'";
    return date_obj_time;
}

然后我使用jQuery UI datepicker像这样:

$("#selector").datepicker( "option", "dateFormat", "yy-mm-dd "+getTime()+"" );

因此,我得到的值如下:2010-10-31 12:41:57


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

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

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

在我看来,日期和时间应该作为两个单独的输入框处理,以便用户输入时最可用和最有效。让用户一次只输入一件东西是一个很好的原则。

我使用核心UI DatePicker和下面的时间选择器。

这一个是受到谷歌日历使用的启发:

jQuery timePicker: 示例:http://labs.perifer.se/timedatepicker/ 项目在github: https://github.com/perifer/timePicker

我发现它是所有选择中最好的。用户可以快速输入,它看起来干净,简单,并允许用户输入具体的时间,精确到分钟。

PS: 在我看来:滑块(一些替代时间选择器使用的滑块)需要太多的点击,并且需要用户的鼠标精度(这会使输入速度变慢)。


这是一些代码,我用来让用户选择一个 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()));
        }
    });

看看下面的JavaScript插件。

带有日期和时间的Javascript日历

我已经尽可能简单了。但它仍处于早期阶段。 让我知道反馈,以便我改进它。