如何使用JQuery将时间添加到日期实例中,并通过减去两个日期来获得小时

How to add time into date instance using JQuery and get hours by Subtracting Two dates

本文关键字:日期 小时 两个 时间 JQuery 何使用 添加 实例      更新时间:2023-09-26

我想在日期中添加时间,并想通过减去EndDate和StartDate来获得小时。。下面是我的尝试。请帮我

var selectedStartDate;
        var selectedEndDate;
        $("#StartDate").change(function () {
            selectedStartDate = $('#StartDate').datepicker({ dateFormat: 'dd/MM/yyyy' }).val();
            alert(selectedStartDate);
        });
        $("#EndDate").change(function () {
            debugger;
            selectedEndDate = $('#EndDate').datepicker({ dateFormat: 'dd/MM/yyyy' }).val();
            alert(selectedEndDate);
            selectedEndDate = selectedEndDate + ' ' + '12:00:00 AM';
            selectedStartDate = selectedStartDate + ' ' + '10:00:00 AM';
            var timeDiff = Math.abs(selectedEndDate- selectedStartDate);
            alert(timeDiff);
        });

给你。我重构了代码,我认为我们不需要时间,否则应该使用datetimepicker而不是datepicker:

var selectedStartDate;
var selectedEndDate;
$("#StartDate").datepicker({
  dateFormat: 'dd/mm/yy',
  onSelect: onSelect
});
$("#EndDate").datepicker({
  dateFormat: 'dd/mm/yy',
  onSelect: onSelect
});
function onSelect(dateText, inst) {
  selectedStartDate = $("#StartDate").datepicker("getDate");
  selectedEndDate = $("#EndDate").datepicker("getDate");
  if (selectedStartDate != null && selectedEndDate != null) {
    var timeDiff = Math.abs(selectedEndDate.getTime() - selectedStartDate.getTime());
    var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24));
    alert(diffDays);
  }
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>
<link href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.4/themes/smoothness/jquery-ui.css" rel="stylesheet" />Start:
<input type="text" id="StartDate" />End:
<input type="text" id="EndDate" />

希望得到帮助。