【问题标题】:Pickadate - how to actually use selected date?Pickadate - 如何实际使用选定的日期?
【发布时间】:2015-09-23 09:20:31
【问题描述】:

我正在实现一个pickadate 日期选择器,文档中并不清楚如何实际使用用户选择的日期。例如,我写了这个:

$('.datepicker').pickadate({
    onSet: function(context) {
        console.log(context);
    }
});

这会产生一个奇怪的输出(2015 年 9 月 8 日):

Object {select: 1441666800000}

这个输出实际上是如何使用的?

【问题讨论】:

    标签: javascript jquery datepicker pickadate


    【解决方案1】:

    您的输出是一个带有select 属性的javascript 对象。此属性的值为timestamp。实际上,这个时间戳是从 unix 纪元开始到所选日期的毫秒数。您可以使用Date.prototype 转换为日期对象:

    $('.datepicker').pickadate({
        onSet: function(context) {
            console.log(new Date(context.select););
        }
    });
    

    【讨论】:

    • 酷。知道如何让pickadate默认不将所选日期打印到输入中吗?
    • 您将如何处理而不是显示这个选定的日期,而您必须将它捕获在一个变量中以便以后在其他地方使用?这段代码去哪里了?很抱歉问了一个旧答案,但我发现只有 2 段代码类似于我需要的......
    • gist.github.com/diedsmiling/788d3684b0e8eec804b31cdd7bc9c8e3 这样的东西,如果我理解正确的话。
    • 完全正确,非常感谢。这似乎很容易,但对我来说,我还没有这样做,我在每一个看起来错误的地方寻找。
    【解决方案2】:

    奇怪的数字是以毫秒为单位返回的日期。

    在控制台中试试这个:

    new Date(1441666800000);
    
    // Returns:
    // Mon Sep 07 2015 16:00:00 GMT-0700 (PDT)
    

    这样使用:

    $('.datepicker').pickadate({
        onSet: function(context) {
            console.log(new Date(context.select););
        }
    });
    

    希望这会有所帮助!

    【讨论】:

    • 返回日期的方式多么奇怪。谢谢。
    • 严重的是什么?为什么?
    • 这对我不起作用。 Lazarev Alexandr 的回答对我有用。
    • @gregblass 我展示了这个“奇怪的输出”是如何实际可用的。 LazarevAlexandr 的回答也是正确的,并且与pickadate 库更直接相关。
    • @GregBlass 我也是。这个答案对我不起作用。亚历山大的回答对我有用:stackoverflow.com/questions/32735624/…
    【解决方案3】:

    您还可以使用get select 方法以更方便的格式获取所选日期。例如触发关闭事件时。

    $('.datepicker').pickadate({
        onClose: function() {
            console.log(this.get('select', 'yyyy-mm-dd'));
        }
    });
    

    【讨论】:

      【解决方案4】:

      首先,您必须为输入字段添加日期选择器,然后在提交按钮上,您可以将选择的值存储到一个变量中,并使用您想要使用 jquery 显示日期的变量:

      <script type="text/javascript">
      // Datepicker
      $(document).ready(function(){
          $("#datepicker" ).datepicker({ minDate: 0});    
          jQuery( "#datepicker" ).datepicker({ dateFormat: 'dd-mm-yy' });
      
          $("form").submit(function() {
              var datepickedup = $("input#datepicker").val();
          });
      });
      

      #datepicker 是输入字段 ID。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-04-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-05-29
        相关资源
        最近更新 更多