У меня есть форма с Check-In и Check-Out, которые используют JQyery Date-Picker
Регистрироваться
Проверять, выписываться
Сценарий выбора даты:
// datepicker
tjq('.datepicker-wrap input').each(function() {
var minDate = tjq(this).data("min-date");
if (typeof minDate == "undefined") {
minDate = 0;
}
tjq(this).datepicker({
showOn: 'button',
buttonImage: 'images/icon/blank.png',
buttonText: '',
buttonImageOnly: true,
changeYear: false,
/*showOtherMonths: true,*/
minDate: minDate,
dateFormat: "yy-mm-dd",
closeText: 'Inchide',
prevText: '« Luna precedenta',
nextText: 'Luna urmÄatoare »',
currentText: 'Azi',
monthNames: ['Ianuarie','Februarie','Martie','Aprilie','Mai','Iunie',
'Iulie','August','Septembrie','Octombrie','Noiembrie','Decembrie'],
monthNamesShort: ['Ian', 'Feb', 'Mar', 'Apr', 'Mai', 'Iun',
'Iul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
dayNames: ['Duminica', 'Luni', 'Marti', 'Miercuri', 'Joi', 'Vineri', 'Sambata'],
dayNamesShort: ['Dum', 'Lun', 'Mar', 'Mie', 'Joi', 'Vin', 'Sam'],
dayNamesMin: ['Du','Lu','Ma','Mi','Jo','Vi','Sa'],
weekHeader: 'Sapt',
firstDay: 1,
isRTL: false,
showMonthAfterYear: false,
beforeShow: function(input, inst) {
var themeClass = tjq(input).parent().attr("class").replace("datepicker-wrap", "");
tjq('#ui-datepicker-div').attr("class", "");
tjq('#ui-datepicker-div').addClass("ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all");
tjq('#ui-datepicker-div').addClass(themeClass);
}
});
});
Календари
<input type="text" name="date1" class="input-text full-width hasDatepicker" id="date1">
<input type="text" name="date2" class="input-text full-width hasDatepicker" id="date2">
Как я могу улучшить средство выбора даты jquery, чтобы, когда я щелкаю одно из полей (Check In или Check Out), они оба всплывают и автоматически выбирают «Check out», чтобы иметь 1 день после Check In?
Я немного поиграл в JSFiddle и думаю, что понял, что вам нужно. Это должно помочь. Изменить в соответствии с вашими потребностями:
HTML:
<input type="text" name="date1" class="datepicker" id="date1">
<input type="text" name="date2" class="datepicker" id="date2">
JQuery:
$(document).ready(function(){
$("#date2").datepicker();
$("#date1").datepicker({
onSelect: function(){
var fecha = $(this).datepicker('getDate');
$("#date2").datepicker("setDate", new Date(fecha.getTime()));
$("#date2").datepicker("setDate", "+15d");
}
});
});
@ solar411 Хотел добавить, что второй setDate просто добавляет 15 к текущей дате. Этот измененный JSFiddle добавит один день к ранее выбранной дате.
http://jsfiddle.net/fpcuhv35/2/
$(document).ready(function(){
$("#date2").datepicker();
$("#date1").datepicker({
onSelect: function(){
var fecha = $(this).datepicker('getDate');
$("#date2").datepicker("setDate", new Date(fecha.getTime() + 24 * 60 * 60 * 1000));
}
});
});