Jquery 从datetimepicker引导程序3获取值

Jquery 从datetimepicker引导程序3获取值,jquery,twitter-bootstrap,bootstrap-datetimepicker,Jquery,Twitter Bootstrap,Bootstrap Datetimepicker,我希望使用jquery从datetimepicker()获取日期值,以查找两个输入日期之间的差异。我花了好几天时间做这件事,但一点运气都没有。这是我的代码: HTML <div class="col-sm-4"> <label for="label_duration" id="lblStartDate" class="col-sm-2 control-label">Start Date</label> <div c

我希望使用jquery从datetimepicker()获取日期值,以查找两个输入日期之间的差异。我花了好几天时间做这件事,但一点运气都没有。这是我的代码:

HTML

<div class="col-sm-4">
    <label for="label_duration" id="lblStartDate" 
           class="col-sm-2 control-label">Start Date</label>
    <div class='input-group date' id='datetimepicker1'>
        <input type='text' class="form-control" name="startdate" 
               id="startdate" placeholder="yyyy-mm-dd"  required/>
        <span class="input-group-addon">
            <span class="glyphicon glyphicon-calendar"></span>
        </span>
    </div>
</div>

<div class="col-sm-4">
    <label for="label_duration" id="lblEndDate"  class="col-sm-2 
           control-label">End Date</label>
    <div class='input-group date' id='datetimepicker2'>
        <input type='text' class="form-control" name="enddate" id="enddate" 
               placeholder="yyyy-mm-dd" required/>
        <span class="input-group-addon">
            <span class="glyphicon glyphicon-calendar"></span>
        </span>
    </div>
</div>

从API文档()中:

或处理changeDate事件:

el.on('changeDate', function(e) {
  console.log(e.date.toString());
  console.log(e.localDate.toString());
});
您可以使用
.date()
方法将当前日期作为对象发出

由于datetimepicker吐出一个momentjs对象,因此很容易计算差异


以下是两个字符串之间的天数差异演示:

var diffInDays = (new Date('1970-01-01').valueOf()-new Date('1970-01-02').valueOf())/(3600*24*1000);
两种输入之间的差异(以天为单位):

var diffInDays = (new Date($('#startdate').val()).valueOf()-new Date($('#enddate').val()).valueOf())/(3600*24*1000);

这段代码到底出了什么问题?我不知道如何获取日期值来计算日期差。我只是不知道如何从datetimepicker获取日期值。我尝试使用.val(),但没有成功。我在他们的网站上登录了firebug,val()的工作原理与您的预期完全一致。在这种情况下,它将是
$(“#startdate”).val()
$(“#enddate”).val()
的可能重复项
var mydatetimepicker = $('#datetimepicker1').datetimepicker();
var dtp = mydatetimepicker.data('DateTimePicker');
console.log(dtp.date());
var mydatetimepicker1 = $('#datetimepicker1').datetimepicker();
var dtp1 = mydatetimepicker1.data('DateTimePicker');

var mydatetimepicker2 = $('#datetimepicker2').datetimepicker();
var dtp2 = mydatetimepicker2.data('DateTimePicker');

var start = dtp1.date();
var end = dtp2.date();

var diff = end.diff(start);
console.log(diff);
var diffInDays = (new Date('1970-01-01').valueOf()-new Date('1970-01-02').valueOf())/(3600*24*1000);
var diffInDays = (new Date($('#startdate').val()).valueOf()-new Date($('#enddate').val()).valueOf())/(3600*24*1000);