jQuery datepicker динамический minDate искажает значение
Я создаю 2 сборщика даты:
<input id="from" readonly value="05-10-2014">
<input id="to" readonly value="09-10-2014">
$("#from").datepicker();
$("#to").datepicker();
console.log($("#from").val() + ' - ' + $("#to").val());
Обе даты отображаются правильно.
Теперь я устанавливаю minDate динамически:
$("#to").datepicker("option", "minDate", $("#from").val());
console.log($("#from").val() + ' - ' + $("#to").val());
2-е свидание исчезает.
Я уверен, что скучаю по чему-то очевидному. Пожалуйста помоги.
1 ответ
Решение
Именно из-за dateFormat формат даты по умолчанию mm/dd/yy
, но когда вы передаете значение from
как строка это не в том формате, который вызывает проблему.
Одним из возможных решений является установка dateFormat на указатель даты, например
$("#from, #to").datepicker({
dateFormat: 'dd-mm-yy'
});
console.log($("#from").val() + ' - ' + $("#to").val());
$("#to").datepicker("option", "minDate", $("#from").val());
console.log($("#from").val() + ' - ' + $("#to").val());
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.js"></script>
<link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/themes/redmond/jquery-ui.css">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.4/jquery-ui.js"></script>
<input id="from" value="05-10-2014">
<input id="to" value="09-10-2014">