2

ホテル予約用の日付ピッカーが2つあり、日付範囲のフォームに2つのテキストフィールドがあります。誰かが最初の日付ピッカーで日付を選択すると、2番目の日付ピッカーはテキストフィールド2に同じ日付を自動的に入力します。同じ日付ではなく、テキストフィールド2に翌日の日付を入力するようにスクリプトを変更するにはどうすればよいですか?

私のコード

$(function() {
var dates = $( "#from, #to" ).datepicker({
showOn: "both",
buttonImage: "fileadmin/template/datepicker/img/kalender.png",
buttonImageOnly: true,
defaultDate: "+1w",
changeMonth: true,
numberOfMonths: 1,
onSelect: function( selectedDate ) {
  var option = this.id == "from" ? "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 );
}
});    
4

2 に答える 2

3

onSelectイベントにこのコードを試してください:

onSelect: function(selectedDate) {
    var option = this.id == "from" ? "minDate" : "maxDate";
    var date = new Date($(this).datepicker('getDate'));
    date.setDate(date.getDate() + 1);
    dates.not(this).datepicker("option", option, date);
}
于 2012-05-09T17:08:03.380 に答える
0
$(function() {
    var dates = $("#from, #to").datepicker({
        showOn: "both",
        buttonImage: "fileadmin/template/datepicker/img/kalender.png",
        buttonImageOnly: true,
        defaultDate: "+1w",
        changeMonth: true,
        numberOfMonths: 1,
        onSelect: function(dateText, inst) {
            var option = this.id == "from" ? "minDate" : "maxDate",
                actualDate = new Date(dateText);
            var newDate = new Date(actualDate.getFullYear(), actualDate.getMonth(), actualDate.getDate() + 1);
            dates.not(this).datepicker("option", option, newDate);
        }
    });
});

デモ

于 2012-05-09T17:09:53.710 に答える