Вы не выбрали правильное значение переключателя. Попробуйте изменить состояние if
, как показано ниже.
if ($("input[name='locate']:checked").val() == 'Internal'){
$( "#dueDate" ).datepicker( { minDate: '-6M', maxDate: '+6M' });
}
else {
$( "#dueDate" ).datepicker( { minDate: -0, maxDate: '+6M' });
}
ОБНОВЛЕНИЕ 1: Используйте destroy
, чтобы уничтожить датупиксера и воссоздать его по мере изменения параметра переключателя. Вот полный код. Ссылка на рабочий DEMO
$("input[name='locate']").click(function() {
locate = this.value;
var dateField = $('#dueDate');
if ($("input[name='locate']:checked").val() == 'Internal'){
dateField.datepicker('destroy');
dateField.datepicker( { minDate: '-6M', maxDate: '+6M' });
}
else {
dateField.datepicker('destroy');
dateField.datepicker( { minDate: -0, maxDate: '+6M' });
}
});
Когда вы выберете Internal
, вы сможете вернуться к 6 месяцам и когда Extrenal
будет выбрано, то это от текущего дата.
Здесь понятие «асинхронно» означает, что вы не ожидаете результата как зависимости для выполнения какой-либо другой задачи, например, вставки дочерних записей с идентификатором родительской записи, возвращаемым из команды «создать родителя». Действительно, «Обновление» в верхней части статьи, на которую вы ссылались, говорит именно так: клиент должен создать идентификаторы для записей, вставленных в базу данных, и это позволяет безупречно реализовать CQ (R) S.