2016-12-07 17 views
0

このJQueryの日付ピッカーコードを使用して日付範囲を選択しています。JQuery datepickerは終了日に1日を加算しますminDate

$(function() { 
    var dateFormat = "mm/dd/yy", 
     from = $("#from").datepicker({ 
      defaultDate: "+1w", 
      changeMonth: true, 
      numberOfMonths: 3 
     }).on("change", function() { 
      to.datepicker("option", "minDate", getDate(this)); 
     }), 
     to = $("#to").datepicker({ 
      defaultDate: "+1w", 
      changeMonth: true, 
      numberOfMonths: 3 
     }).on("change", function() { 
      from.datepicker("option", "maxDate", getDate(this)); 
     }); 

    function getDate(element) { 
     var date; 
     try { 
      date = $.datepicker.parseDate(dateFormat, element.value); 
     } catch (error) { 
      date = null; 
     } 
     return date; 
    } 
}); 

終了日に1日を追加する必要があります。たとえば、開始日に12/08/2016を選択した場合、終了日は12/09/2016から開始します。

どうすればいいですか?ここJSFiddle

+0

を追加するには、 'jsfiddle'または' snippet'を作ることはできますか? –

答えて

3

あなたは日付ピッカーが選択されたときに呼び出され日付ピッカー

からonSelectイベントに日付ピッカーにmin-dateオプションを設定する必要があります。この関数は、選択された日付をテキストとして、datepickerインスタンスをパラメータとして受け取ります。関連する入力フィールドを参照します。

注:のみ関連するコードここ

$('#from').datepicker({ 
     onSelect: function(selectedDate) { 
      $('#to').datepicker('option', 'minDate', new Date(selectedDate).addDays(1)); 
     } 
}); 

//Method to add days to date 
function addDays(date, days) { 
    var dat = date; 
    dat.setDate(dat.getDate() + days); 
    return dat; 
} 

Fiddle

+0

ありがとうございました!チャームのように働いた! :) –

関連する問題