簡體   English   中英

單擊第二個日期選擇器時如何獲取兩個日期選擇器之間的日期差異?

[英]How to get the date difference between two date pickers on clicking the second date picker?

我只想顯示兩個 jquery 日期選擇器之間的日期差異。 單擊第二個日期選擇器時應顯示差異。 以下是我的代碼。

<input type ="text" id="Date">
<input type ="text" id="Date2">

$(function () {

        var select=function(dateStr) {
              var d1 = $('#Date').datepicker('getDate');
              var d2 = $('Date2').datepicker('getDate');
              var diff = 0;
              if (d1 && d2) {
                    diff = Math.floor((d2.getTime() - d1.getTime()) / 86400000); // ms per day
              }
              alert(diff);
        }
        $("#Date").datepicker({
               autoclose: true,
               todayHighlight: true,
               onSelect: select
        }).datepicker('update', new Date());
        $("#Date2").datepicker({
               autoclose: true,
               todayHighlight: true,
               onSelect: select
        }).datepicker('update', new Date());
    });

誰能幫我嗎?

您可以使用 datepicker 的onSelect 事件,該事件datapicker上更改日期時觸發。

我也看到你有一個錯字,替換var d2 = $('Date2').datepicker('getDate');

使用var d2 = $('#Date2').datepicker('getDate');

像這樣的東西:

$("#Date2").datepicker({ 
      onSelect: function(value, date) { 
          var d1 = $('#Date').datepicker('getDate');
          var d2 = $('#Date2').datepicker('getDate');
          var diff = 0;
          if (d1 && d2) {
                diff = Math.floor((d2.getTime() - d1.getTime()) / 86400000); // ms per day
          }
          alert(diff);
      } 
});

我認為以下代碼會起作用

$("#Date2").bind('change keyup', function() {
            var date1 = $('#Date').datepicker('getDate');
            var date2 = $(this).datepicker('getDate');
            var dayDiff = Math.ceil((date2 - date1) / (1000 * 60 * 60 * 24));
            alert(dayDiff);
        });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM