2016-07-27 3 views
0

私たちのホテルのウェブサイトにjQuery Datepckerがあり、私たちは予約フォームでゲストを3週間以上選択することはできません。私はこのフォーラムとウェブ上で解決策を見つけようとしましたが、うまくいく答えを見つけられませんでした。以下は現在のコードです。私はmaxDate: '+ 3W'を使ってみましたが、現在の日付から3週間を除くすべての日を無効にします。ゲストが到着日に選択したものは、出発日が最大3週間までに限ります。どんな助けもありがとう。Jquery Datepickerは3週間の日付範囲の選択のみを許可します

$(".datepicker[name='A']").datepicker({ 
    showOn: 'both', 
    defaultDate: "+1d", 
    dateFormat: 'mm/dd/yy', 
    minDate: "+1D",  
    changeMonth: false, 
    buttonText: '<i class="fa fa-calendar"></i>', 
    numberOfMonths: 1, 
    onClose: function(selectedDate) { 
    $(".datepicker[name='D']").datepicker("option", "minDate", selectedDate); 
    } 
}); 
$(".datepicker[name='D']").datepicker({ 
    showOn: 'both', 
    defaultDate: "+2d",  
    dateFormat: 'mm/dd/yy',   
    changeMonth: false, 
    buttonText: '<i class="fa fa-calendar"></i>', 
    numberOfMonths: 1, 
    onClose: function(selectedDate) { 
    $(".datepicker[name='A']").datepicker("option", "maxDate", selectedDate); 
    } 
}); 
+0

私はmaxdate: '+ 21d'を試しましたが、それは今日からわずか21日です。私は到着日から21日を制限したい。私もstartDate:new Date()を試しましたが、それが壊れました。誰かが私の答えに座っている.. – Duranic

+0

最後に自分自身を考え出した。これは簡単な方法です。たいていの記事はあまりにも広範囲なので、とてもシンプルなことはできません – Duranic

答えて

0

ここにコードがあります。

$(".datepicker[name='A']").datepicker({ 
    showOn: 'both', 
    defaultDate: "+1d", 
    dateFormat: 'mm/dd/yy', 
    minDate: "+2D",  
    changeMonth: false, 
    buttonText: '<i class="fa fa-calendar"></i>', 
    numberOfMonths: 1, 
    onClose: function(selectedDate) { 
    console.log(new Date(new Date(selectedDate).getTime() + 1814400000)); 
    $(".datepicker[name='D']").datepicker("option", "minDate", selectedDate); 
    $(".datepicker[name='D']").datepicker("option", "maxDate", new Date(new Date(selectedDate).getTime() + 1814400000)); 
    } 
}); 
$(".datepicker[name='D']").datepicker({ 
    showOn: 'both', 
    defaultDate: "+2d",  
    dateFormat: 'mm/dd/yy',   
    changeMonth: false, 
    buttonText: '<i class="fa fa-calendar"></i>', 
    numberOfMonths: 1, 
    onClose: function(selectedDate) { 
    $(".datepicker[name='A']").datepicker("option", "maxDate", selectedDate); 
    } 
}); 

あなたがより良い方法をお持ちの場合は、投稿してください。

関連する問題