【问题标题】:Convert values between two “contact form 7” dates into javascript/jquery and output range of these dates将两个“联系表 7”日期之间的值转换为 javascript/jquery 和这些日期的输出范围
【发布时间】:2018-10-19 09:34:24
【问题描述】:

更新: 虽然看起来不是很干净,但它可以工作......如果有人可以让它更干净,那么不客气

<div class="column one-fourth" id="date-start">[date* date-start date-format:dd/mm/yy min:today+1days placeholder "Date start"] </div> 
<div class="column one-fourth" id="date-end">[date* date-end placeholder "Date end"] </div>

<p>Start date: <span id="kp1">date</span> <br>
End date: <span id="kp2">date</span> <br>
Number of days: <span id="days">days</span> </p>


<!-- Calculating & stuff -->

<script>
         var date1, date2;
         date1 = document.getElementById("date-start").addEventListener("change", function() {
    input1 = this.value;
    // Value which is needed for a calculation
    var dateEntered1 = new Date(input1);
    dat1 = Math.abs(dateEntered1.getTime());
    document.getElementById("kp1").innerHTML = input1;
});
         date2 = document.getElementById("date-end").addEventListener("change", function() {
    input2 = this.value;
    // Value which is needed for a calculation
    var dateEntered2 = new Date(input2);
    dat2 = Math.abs(dateEntered2.getTime());
    document.getElementById("kp2").innerHTML = input2;

    // Calculating difference between dates
     var timeDiff = (dat2 - dat1) + 1;
     var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24)); 
     console.log(diffDays);
    document.getElementById("days").innerHTML = diffDays;
});</script>

旧:

我正在使用联系表格 7 常规 HTML5 日期短代码(不是 datepicker 插件)。一个用于开始日期。另一个用于结束日期。首先,我需要以某种方式获得这些值。然后我需要输出一个在这两个值之间计算的数字。

例如,如果我选择 21.10.2018 作为开始日期。结束日期为 23.10.2018,然后我需要将结果输出为“天数:3”。

问题是我不知道如何获取两个日期之间的数值。

我从这里找到了一些东西,但我知道它缺少一些重要的部分。

无论如何,联系表格 7:

<div class="column one-fourth" id="date-start">[date* date-start date-format:dd/mm/yy min:today+1days placeholder "Date start"] </div> 
<div class="column one-fourth" id="date-end">[date* date-end placeholder "Date end"] </div>

<script>
         var date1, date2;
         date1 = document.getElementById("date-start");
         document.write(""+date1);
         date2 = document.getElementById("date-end");
         document.write("<br>"+date2);
         // get total seconds between two dates
         var res = Math.abs(date1 - date2) / 1000;
         var days = Math.floor(res / 86400);
         document.write("<br>Number of days: "+days);
</script>

【问题讨论】:

  • 我懒得做这些事情了。我会使用 moment.js。这个 Lib 进行所有这些类型的计算等等
  • 好的,谢谢指导 :)
  • 主要问题是您还有德语 (?) 日期格式。 JavaScript 只理解美国格式。使用提到的库,您可以处理所有这些.. 当然,如果您愿意,您可以全部编程

标签: javascript jquery wordpress html date


【解决方案1】:

它不干净,但它可以工作。

<div class="column one-fourth">[date* date-start id:date-start date-format:dd/mm/yy min:today+1days placeholder "Date start"] </div> 
<div class="column one-fourth">[date* date-end id:date-end placeholder "Date end"] </div>

<p>Start date: <span id="kp1">date</span> <br>
End date: <span id="kp2">date</span> <br>
Number of days: <span id="days">days</span> </p>


<!-- Calculating & stuff -->

<script>
         var date1, date2;
         date1 = document.getElementById("date-start").addEventListener("change", function() {
    input1 = this.value;
    // Value which is needed for a calculation
    var dateEntered1 = new Date(input1);
    dat1 = Math.abs(dateEntered1.getTime());
    document.getElementById("kp1").innerHTML = input1;
});
         date2 = document.getElementById("date-end").addEventListener("change", function() {
    input2 = this.value;
    // Value which is needed for a calculation
    var dateEntered2 = new Date(input2);
    dat2 = Math.abs(dateEntered2.getTime());
    document.getElementById("kp2").innerHTML = input2;

    // Calculating difference between dates
     var timeDiff = (dat2 - dat1) + 1;
     var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24)); 
     console.log(diffDays);
    document.getElementById("days").innerHTML = diffDays;
});</script>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多