#javascript #twitter-bootstrap #datetime #datetimepicker #bootstrap-datetimepicker
#javascript #twitter-bootstrap #дата и время #datetimepicker #bootstrap-datetimepicker
Вопрос:
Календарь начальной загрузки показывает два календаря в IE 11, когда я нажимаю на значки << или >>, чтобы получить предыдущий или последний месяц. Ниже приведен код, написанный для отображения календаря. Пожалуйста, помогите. Заранее спасибо.
$(".datepicker, .date").datepicker({
format: 'dd M yyyy',
weekStart: 1,
todayBtn: "linked",
showTodayButton: true,
forceParse: false,
//clearBtn: true,
beforeShowDay: function (date) {
var d = date.getDate();
var m = date.getMonth() 1;
var y = date.getFullYear();
if (holidayJson[y] amp;amp; holidayJson[y][m] amp;amp; holidayJson[y][m][d]) {
var s = holidayJson[y][m][d];
return {
tooltip: s.tooltip,
classes: s.className
};
} else {
return { tooltip: 'amp;nbsp;', classes: '' };
}
}
});
Я думаю, что проблема связана с функцией beforeShowDay, если я удалю ее, она будет работать нормально. Ниже приведен html-код из html-файла и aspx-файла.
<div class="input-append date" style="cursor: pointer; display: inline;">
<input type="text" id="FromDate" class="form-control input-sm" onfocus="blur();" data-ng-model="ttsViewModel.FromDate" style="display: inline-block;" />
<span class="add-on" id="FromDateAddOn" style="font-size: 16px; color: #c09853;"><i class="fa fa-calendar" style="padding-left: 3px; padding-top: 4px;"></i></span>
</div>
<div class="input-append date" style="cursor: pointer; display: inline;" data-date-format="dd M yyyy">
<asp:TextBox ID="txtFdate" Width="80px" runat="server" ToolTip="mm/dd/yyyy" ClientIDMode="Static" CssClass="form-control input-sm"
style="width: 80px; display: inline-block;" ></asp:TextBox>
<span class="add-on" style="font-size: 16px; color: #c09853;"><i class="fa fa-calendar" style="padding-left: 3px; padding-top: 4px;"></i></span>
</div>
Комментарии:
1. Пожалуйста, укажите свой HTML
2. ДА.. пожалуйста, вставьте html..
3. обновлен фрагмент HTML-кода
4. Вы когда-нибудь находили решение для этого? Я сталкиваюсь с такой же ситуацией.
Ответ №1:
Проблема вызвана тем, как вы применяете функцию выбора даты к своему элементу / текстовому полю. Class .datepicker уже используется самой библиотекой для окна выбора даты, используя то же имя класса для указания элементов, к которым применяются указатели даты, что приводит к тому, что ваш код пытается добавить новый указатель даты во всплывающее окно выбора даты (потому что он пытается добавить указатель даты к каждому элементу, имеющему class .datepicker, и всплывающее окно выбора даты использует этот класс).
Насколько я знаю, это, по-видимому, вызывает ошибку только при переключении месяца и при использовании IE11, по каким-либо причинам. Возможно, потому, что другой щелчок во всплывающем окне выбора даты вызывает изменение режима выбора даты и перерисовку выбора даты.
Попробуйте просто использовать другой класс, чем ‘.datepicker’, чтобы реализовать datepickers для вашего элемента управления (т.е. .attachadatepickertothiscontrol)