У меня есть форма для бронирования, и мне нужно всего лишь два ввода #checkin и #checkout, и именно поэтому я использовал datepicker с daterange, все идет нормально, почти одно, как я могу выбрать всего 15 дней между две даты?Настройки daterange с pikaday datepicker
, кстати, я использую Pikaday datepicker
$(document).ready(function() {
$('.flexdatalist').flexdatalist({
minLength: 0,
searchContain: true,
}).on('select:flexdatalist', function() {
$('#checkin').trigger("click");
});
assignPicker = function(id, whenClosed) {
if (typeof whenClosed !== 'function') {
whenClosed = null;
}
return new Pikaday({
numberOfMonths: 2,
field: document.getElementById(id),
format: "DD.MM.YYYY",
minDate: new Date(),
firstDay: 1,
maxDate: new Date(2020, 12, 31),
onSelect: function() {
e = this.getDate();
},
onSelect: whenClosed
});
}
assignPicker('checkin', function() {
$('#checkout').trigger("click");
});
assignPicker('checkout', function() {
$('#select').trigger("click");
});
});
body {
padding: 30px;
}
input,
select {
width: 100%;
padding: 10px;
border: 1px solid #ccc;
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/pikaday/1.5.1/css/pikaday.min.css" />
<link rel="stylesheet" href="https://cdn.anitur.com.tr/example/flexdatalist/flexdatalist.css" />
<div class="container">
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-3">
<input type="text" name="" class='flexdatalist' data-min-length='1' list='languages' name='language' />
<datalist id="languages">
<option value="PHP">PHP</option>
<option value="JavaScript">JavaScript</option>
<option value="Cobol">Cobol</option>
<option value="C#">C#</option>
<option value="C++">C++</option>
<option value="Java">Java</option>
<option value="Pascal">Pascal</option>
<option value="FORTRAN">FORTRAN</option>
<option value="Lisp">Lisp</option>
<option value="Swift">Swift</option>
<option value="ActionScript">ActionScript</option>
</datalist>
</div>
<div class="col-lg-3 col-md-3 col-sm-3">
<input type="text" id="checkin" />
</div>
<div class="col-lg-3 col-md-3 col-sm-3">
<input type="text" id="checkout" />
</div>
<div class="col-lg-3 col-md-3 col-sm-3">
<form action="" method="get">
<select name="select" id="select">
<option value="0">Choose</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
</select>
</form>
</div>
</div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/pikaday/1.5.1/pikaday.min.js"></script>
<script src="https://cdn.anitur.com.tr/example/flexdatalist/flexdatalist.js"></script>
if you can check it out on codepen instead of stackoverflow snippet
thanks.After CheckIN это не фокусирование форма оформления заказа –
я думаю, проблема это о getMoment, и я не хочу getmoment.js есть ли способ обойтись без moment.js? –
Просто добавьте '$ ('# checkout'). Trigger (" click ");' в функцию обратного вызова pickin picker. И конечно, вам не нужно использовать Moment.js, например [здесь] (http://stackoverflow.com/questions/563406/add-days-to-javascript-date). Но есть много вещей, которые нужно учитывать при работе с датами в JS (летнее время, високосные годы, часовые пояса и т. Д.), А Moment заботится обо всем. Это делает жизнь намного проще, поэтому я бы рекомендовал вам ее использовать. –