Я использую DateTimePicker от http://trentrichardson.com/examples/timepicker/JQuery изменения DateTimePicker мин/результаты MaxDate в бесконечном цикле
Проблема в том, что у меня есть поле ввода начального и конечного. Я не хочу, чтобы пользователь мог выбрать конец datetime, а затем поле даты начала.
полей ввода выглядит следующим образом:
<input type="text" name="dateStart" id="dateStart" value="<?php echo $pageInfo['page_date_start'];?>" onChange="dateStartChange();" />
<input type="text" name="dateEnd" id="dateEnd" value="<?php echo $pageInfo['page_date_end'];?>" onChange="dateEndChange();" />
// Default date value = 0000-00-00 00:00:00
JScript, что расстановок в DateTimePicker:
$('#dateStart').datetimepicker({
showSecond: false,
timeFormat: 'HH:mm:ss',
dateFormat: "yy-mm-dd",
});
$('#dateEnd').datetimepicker({
showSecond: false,
timeFormat: 'HH:mm:ss',
dateFormat: "yy-mm-dd",
});
И в OnChange функции:
function dateStartChange(){
console.log("dateStartChange: " + $("#dateStart").val());
$("#dateEnd").datepicker('option', 'minDate', $("#dateStart").val());
}
function dateEndChange(){
console.log("dateEndChange: " + $("#dateEnd").val());
$("#dateStart").datepicker('option', 'maxDate', $("#dateEnd").val());
}
Это прекрасно работает за исключением одного вещь. Если изменить дату, а затем нажмите на другом поле ввода и выберите тот же день, что приводит к бесконечному циклу, если я просматриваю журнал консоли:
И страница (хром) изменения к этому:
Это проблема с сборщиком datetime или я делаю что-то неправильно? Я не понимаю.
сейчас вы говорите это, становится ясно: D 1 Вопрос, как вы думаете, что я могу предотвратить рекурсию с этим тогда? – Mathlight
Я исправил проблемы, подобные этому, используя флагов boolean. Что-то вроде bCodeChange. Когда вы собираетесь изменить другой элемент управления, установите его значение true, когда это будет сделано, установите значение false. Затем в элементе управления, если bCodeChange истинно, просто выйдите, ничего не делайте. Тем не менее, я нахожу этот вид клочья. –
Звучит уродливо, но я не думаю, что это сработает. Потому что, если я просто нажму 1 раз на дату, консоль вернет 3 раза журнал функциональной консоли (http://i.imgur.com/0ydySEx.jpg) – Mathlight