レポートでは、jQuery ui datepicker を使用して特定の日付を選択するための startDate および endDate フィールドを表示しています。startDate および endDate フィールドについては、今日の日付をデフォルトの日付として指定しています。私の要件は
1) 顧客が endDate を直接クリックした場合、今日の日付より前の日付と今日の日付より後の日付は無効にする必要があります。
2) 顧客が startdate に特定の日付を選択した場合、enddate では、選択した日付より前の日付と今日の日付より後の日付を無効にする必要があります。
これには以下のコードを使用しています。
var dates = $( "#startDate, #endDate" ).datepicker({
defaultDate: "+1w",
dateFormat : 'dd-mm-yy',
changeMonth: true,
numberOfMonths: 1,
changeMonth: true,
changeYear : true,
numberOfMonths: 1,
maxDate: 0,
onSelect: function( selectedDate ) {
var option = this.id == "startDate" ? "minDate" : "maxDate",
instance = $( this ).data( "datepicker" ),
date = $.datepicker.parseDate(
instance.settings.dateFormat ||
$.datepicker._defaults.dateFormat,
selectedDate, instance.settings );
dates.not( this ).datepicker( "option", option, date );
}
});
これを使用すると、2 番目の要件を実行できますが、最初の要件は実行できません。しかし、両方の条件を実装する必要があります。
これどうやってするの?