1

datepickerから次のコードを使用してjquery、カレンダーから日付を取得しています。最初のフィールドに日付を選択すると、この日付と時刻も2番目のフィールドに入力されます。

必要なのは、2番目のフィールドに10時間(addHours(10))を追加して日付と時刻を入力することです。いくつかのオプションを試しましたが、成功しませんでした。.addHours(10)2番目のフィールドで結果を取得するために、コードをどこに配置するかについてアドバイスをいただけますか?

var startDateTextBox = $('#rest_example_4_start');
var endDateTextBox = $('#rest_example_4_end');

startDateTextBox.datetimepicker({ 
    onClose: function(dateText, inst) {
        if (endDateTextBox.val() != '') {
            var testStartDate = startDateTextBox.datetimepicker('getDate');
            var testEndDate = endDateTextBox.datetimepicker('getDate');

            if (testStartDate > testEndDate)
                endDateTextBox.datetimepicker('setDate', testStartDate);
        } else {
            endDateTextBox.val(dateText);
        }
    },
    onSelect: function (selectedDateTime) {
        endDateTextBox.datetimepicker('option', 'minDate',  startDateTextBox.datetimepicker('getDate'));        
    }
});

endDateTextBox.datetimepicker({ 
    onClose: function(dateText, inst) {
        if (startDateTextBox.val() != '') {
            var testStartDate = startDateTextBox.datetimepicker('getDate');
            var testEndDate = endDateTextBox.datetimepicker('getDate');

            if (testStartDate > testEndDate)
                startDateTextBox.datetimepicker('setDate', testEndDate);
        }
        else {
        startDateTextBox.val(dateText);
        }
    },
    onSelect: function (selectedDateTime){
        startDateTextBox.datetimepicker('option', 'maxDate', endDateTextBox.datetimepicker('getDate')) 
        startDateTextBox.addHours(10);
    }
});
4

1 に答える 1

4

よくわかりませんが、あなたの入力に基づいて、以下のスクリプトが問題を解決すると思いますjsFiddle

$('#txtName').change(function() {
  var date2 = $('#txtName').datepicker('getDate'); 
  date2.setHours(date2.getHours()+10); 
    //alert(date2);
  $('#txtRes').val(date2);
});

JSFiddleデモ

更新: と互換性のあるデモdatetimepicker

  var date2 = $('#rest_example_4_start').datetimepicker('getDate'); 
  date2.setHours(date2.getHours()+10); 
  $('#rest_example_4_end').datetimepicker('setDate', date2);
});
于 2013-01-27T19:59:03.640 に答える