【问题标题】:How to get Unix timestamp using Bootstrap-datetimepicker如何使用 Bootstrap-datetimepicker 获取 Unix 时间戳
【发布时间】:2017-10-14 19:33:54
【问题描述】:

我正在使用来自https://eonasdan.github.io/bootstrap-datetimepicker/ 的第 3 方日期时间选择器

它工作正常,但是,我想以 Unix 时间戳格式获取值。我怎么做? Unix 没有格式化选项。 https://eonasdan.github.io/bootstrap-datetimepicker/Functions/#format

function getValue() {
    var date = $('#datetimepicker1').data('date');
    alert(date); // shows 05/25/2017 5:43 PM
}


<div class='input-group date' id='datetimepicker1'>
    <input type='text' class="form-control" />
    <span class="input-group-addon">
        <span class="glyphicon glyphicon-calendar"></span>
    </span>
</div>

【问题讨论】:

    标签: javascript jquery twitter-bootstrap unix eonasdan-datetimepicker


    【解决方案1】:

    简短回答:由于该插件与 moment.js 一起使用,您可以使用 momentjs 方法 unix(),如下所示:

    moment($('#datetimepicker1').data('date')).unix()
    

    更新(我在 Internet Explorer 11 上测试)

    $('#datetimepicker1').data('DateTimePicker').date().unix()
    

    【讨论】:

    • 我正在寻找的答案
    • 这实际上给出了 moment.js 的浏览器弃用警告,如此处所示 (stackoverflow.com/questions/39969570/…)
    • 您收到弃用警告,因为$('#datetimepicker1').data('date') 返回的字符串不在recognized format 中。这不是获取选择器值的正确方法,请改用 API 的 date() 方法。
    【解决方案2】:

    eonasdan datetimepicker 有一个很好的 API,您可以使用它以编程方式与选择器交互。

    您可以使用date() 方法:

    返回组件的模型当前日期、moment 对象或 null(如果未设置)。

    由于date() 返回的值是一个moment 对象,您可以使用unix() 获取Unix 时间戳(自Unix 纪元以来的秒数)。

    这是一个工作示例:

    function getValue() {
      var date = $('#datetimepicker1').data("DateTimePicker").date();
      if( date ){
        alert(date.unix());
      }
    }
    
    $('#datetimepicker1').datetimepicker();
    <link href="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.css" rel="stylesheet"/>
    <link href="//cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.47/css/bootstrap-datetimepicker.css" rel="stylesheet"/>
    
    <script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.js"></script>
    <script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>
    <script src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.js"></script>
    <script src="//cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.47/js/bootstrap-datetimepicker.min.js"></script>
    
    <div class='input-group date' id='datetimepicker1'>
        <input type='text' class="form-control" />
        <span class="input-group-addon">
            <span class="glyphicon glyphicon-calendar"></span>
        </span>
    </div>
    
    <button onclick="getValue()" class="btn btn-primary">Get value</button>

    请记住,正如docs 所说:

    注意 所有函数都通过data 属性访问,例如$('#datetimepicker').data("DateTimePicker").FUNCTION()

    【讨论】:

      猜你喜欢
      • 2011-08-26
      • 1970-01-01
      • 1970-01-01
      • 2012-08-05
      • 1970-01-01
      • 1970-01-01
      • 2013-06-30
      • 1970-01-01
      相关资源
      最近更新 更多