如何计算今天日期和jquery datepicker之间的日期

Posted

技术标签:

【中文标题】如何计算今天日期和jquery datepicker之间的日期【英文标题】:How count date between date today and jquery datepicker 【发布时间】:2021-07-24 11:14:04 【问题描述】:

我需要获取今天数据和数据日期选择器之间的年数。我的计数功能不起作用。 jQuery 日期选择器

var datepicker = $("#datepicker").datepicker(
            closeText: "Đóng",
            prevText: "Trước",
            nextText: "Sau",
            currentText: "Hôm nay",
            monthNames: ["Tháng một", "Tháng hai", "Tháng ba", "Tháng tư", "Tháng năm", "Tháng sáu", "Tháng bảy", "Tháng tám", "Tháng chín", "Tháng mười", "Tháng mười một", "Tháng mười hai"],
            monthNamesShort: ["Một", "Hai", "Ba", "Bốn", "Năm", "Sáu", "Bảy", "Tám", "Chín", "Mười", "Mười một", "Mười hai"],
            dayNames: ["Chủ nhật", "Thứ hai", "Thứ ba", "Thứ tư", "Thứ năm", "Thứ sáu", "Thứ bảy"],
            dayNamesShort: ["CN", "Hai", "Ba", "Tư", "Năm", "Sáu", "Bảy"],
            dayNamesMin: ["CN", "T2", "T3", "T4", "T5", "T6", "T7"],
            weekHeader: "Tuần",
            dateFormat: "dd/mm/yy",
            firstDay: 1,
            isRTL: false,
            showMonthAfterYear: false,
            changeYear: true,
            onSelect: function (dateText, inst) 
                var dt = $.datepicker.parseDate("dd/mm/yy", dateText);
                console.log(dt);
                flatpickr = dt.getFullYear();
                console.log("Birth Year: " + flatpickr);
               
              
        ).attr('readOnly', 'true');

今天的功能日期

  function GetTodayDate() 
            let tdate = new Date();
            let yyyy = tdate.getFullYear();
            let currentDate = yyyy;
            return currentDate;
        ;

cout 的函数

  function countGetData() 
        let countGetTodayDate = GetTodayDate();
        let countGetBirthDate = GetBirthDate();
        let count = countGetTodayDate - countGetBirthDate;
        return count;
    ;

从日期选择器获取日期的功能。我如何为我的计数功能工作执行此功能。因为我会在跨度之间显示数字

function GetBirthDate() 
??????????

当我使用 flatpickr 功能时

function GetBirthDate() 
    var flatpickr = document.getElementById("flatpickr2").value;
    let tdate = new Date(flatpickr);
    let yyyy = tdate.getFullYear();
    let currentDate = yyyy;
    return currentDate;
;

现在我不明白如何从 datepicker jquery 函数 GetBirthDay

【问题讨论】:

您想如何处理月/日?假设某人的生日是2002-12-31,今天是2022-01-01,那对你来说几岁? 20 年(因为2022 - 2002 === 20)还是 19 年零 1 天? 是的,我明白你的意思。但对我来说在这种情况下重要的只有几年。意味着今天获得数年,并从日期选择器中选择获得数年。月份和天数不计算在内。为了显示和计算下一个公式,重要的只有几年之间......因为对我来说,重要的例子是让年 = 20。意味着从今天开始我只有几年。从 datepicker 只得到几年。 我添加了函数 GetBirthday 我如何从 flatpickr 中使用。 你是否同时使用 flatpickr 和 jquery datepicker? 没有。例如。 【参考方案1】:

$("#sample").datepicker(
  closeText: "Đóng",
  prevText: "Trước",
  nextText: "Sau",
  currentText: "Hôm nay",
  monthNames: ["Tháng một", "Tháng hai", "Tháng ba", "Tháng tư", "Tháng năm", "Tháng sáu", "Tháng bảy", "Tháng tám", "Tháng chín", "Tháng mười", "Tháng mười một", "Tháng mười hai"],
  monthNamesShort: ["Một", "Hai", "Ba", "Bốn", "Năm", "Sáu", "Bảy", "Tám", "Chín", "Mười", "Mười một", "Mười hai"],
  dayNames: ["Chủ nhật", "Thứ hai", "Thứ ba", "Thứ tư", "Thứ năm", "Thứ sáu", "Thứ bảy"],
  dayNamesShort: ["CN", "Hai", "Ba", "Tư", "Năm", "Sáu", "Bảy"],
  dayNamesMin: ["CN", "T2", "T3", "T4", "T5", "T6", "T7"],
  weekHeader: "Tuần",
  dateFormat: "dd/mm/yy",
  firstDay: 1,
  isRTL: false,
  showMonthAfterYear: false,
  changeYear: true,
  onSelect: function(dateText, inst) 
    var dt = $.datepicker.parseDate("dd/mm/yy", dateText);
    console.log(dt);
    flatpickr = dt.getFullYear();
    console.log("Birth Year: " + flatpickr);
    var d = new Date();
    var year = d.getFullYear();
    console.log('currentYear', year);
    var diff = year - flatpickr;
    console.log('diff', diff);
  
).attr('readOnly', 'true');
<link href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.9.2/themes/base/jquery-ui.min.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.9.2/jquery-ui.min.js"></script>
<input type="text" class="datepicker" id="sample" />

所以现在可以了。

【讨论】:

非常感谢...我显示结果...所有我想要的。我与它战斗了 2 天。 很高兴为您提供帮助。

以上是关于如何计算今天日期和jquery datepicker之间的日期的主要内容,如果未能解决你的问题,请参考以下文章

如何在 jquery UI datepicker 中禁用今天之前的日期?

JQuery datepicker 默认日期和多个 datepicker

jQuery UI:DatePicker,只选择今天到过去的日期

如何在 jQuery datepicker 上设置服务器日期

在 Jquery Ui Datepicker 中禁用今天之后的未来日期

在jQuery UI datepicker中将今天的日期设置为默认日期[重复]