я использую DHTMLX 2.5 календарь. Я привязываю календарь к полю ввода.вопрос с DHTMLX2.5 календарь
<script src="../dhtmlx_suite/js/dhtmlxcommon.js"></script>
<link rel="stylesheet" type="text/css" href="../dhtmlx_suite/skins/dhtmlxcalendar_dhx_skyblue.css" />
<link rel="stylesheet" type="text/css" href="../dhtmlx_suite/css/dhtmlxcalendar.css" />
<script src="../dhtmlx_suite/js/dhtmlxcalendar.js"></script>
<script>
var myCalendar;
function doOnLoad() {
myCalendar = new dhtmlXCalendarObject(["calendar"]);
}
</script>
<div style="position:relative;height:280px;">
<input type="text" id="calendar">
</div>
<script>
doOnLoad();
</script>
Когда я ввожу некоторую неверную дату «например А» в поле ввода и нажмите на поле ввода, он заменяет значение со строкой 'NaN-NaN-NaN. Как это можно было избежать? и сохранить значение eneted пользователя, как оно есть в текстовом поле. Поэтому, когда в поле ввода есть недопустимая дата, я ожидаю, что всплывающее окно календаря будет игнорировать это и просто открыть текущий месяц.
Вы можете прикрепить событие к календарю. Например, что-то вроде onMonthChanged() и возвращает FALSE. Но чтобы он работал так, как вы хотите, у вас должна быть логическая переменная, которая становится ИСТИНА, когда пользователь фокусирует поле ввода и внутри события, которое вы привязали к календарю, проверяете, является ли переменная TRUE или FALSE. если это TRUE, тогда верните FALSE внутри события. –