Я использую специальный jqery datepicker vidget (http://keith-wood.name/datepick.html). Причина в поддержке конкретных календарей (тайский). Применяя новый datepicker к существующей логике, я столкнулся с проблемой. Сборщик не открывается (всплывающее окно не отображается) в браузерах Chrome и Safari, в то время как он отлично работает в IE8 и Firefox. После некоторого расследования я пришел к выводу, что причиной этого является тег html темы привязки. Он написан в ссылке на плагин, к которому он должен быть прикреплен, и теги. И я прикрепляю его к тегам. вот код:jQuery плагин datepicker не работает в Chrome и Safari
<script type="text/javascript" src="../jquery.calendars.js?v=$version"></script>
<script type="text/javascript" src="../jquery.calendars.plus.js?v=$version"></script>
<script type="text/javascript" src="../jquery.calendars.picker.js?v=$version"></script>
<script type="text/javascript" src="../jquery.calendars.thai.js?v=$version"></script>
jQuery(function() {
jQuery('#deactivation_date').calendarsPicker({
changeMonth: false,
showOtherMonths: true,
selectOtherMonths: true,
showAnim: '',
dateFormat: _dateFormat,
calendar: jQuery.calendars.instance(_userLanguageCode == 'th' ? 'thai' : '', 'en'),
alignment: 'bottom',
renderer: jQuery.extend({}, jQuery.calendars.picker.defaultRenderer,
{
picker: jQuery.calendars.picker.defaultRenderer.picker.
replace(/\{link:prev\}/, '{link:prevJump}{link:prev}').
replace(/\{link:next\}/, '{link:nextJump}{link:next}').
replace(/\{link:clear\}/, '').
replace(/\{link:close\}/, '')
}),
onSelect: function(dates){
}
}
});
});
...
<a href="javascript:void(0)" class="date-pick no-left-padding" id = "deactivation_date">
"DateText" </a>
Дальнейшее исследование заставило меня думать, что в Chrome соответствующий обработчик события не подключен правильно, потому что отладчик даже не шаг в «шоу ". Это вероятная часть виджета, который терпит неудачу в Chrome и Safari:
var trigger = inst.get('showTrigger');
inst.trigger = (!trigger ? $([]) :
$(trigger).clone().addClass(this._triggerClass)
[inst.get('isRTL') ? 'insertBefore' : 'insertAfter'](target).
click(function() {
if (!$.calendars.picker.isDisabled(target[0])) {
$.calendars.picker[$.calendars.picker.curInst == inst ?
'hide' : 'show'](target[0]);
}
}));
Существует вариант, чтобы присоединить все datepickers к различным тегам, но DIV/охватывают встроенный рендеринг будет выполняться, и вход Безразлично» t выглядит как текст вообще.
Пожалуйста, поделитесь своими идеями, если таковые имеются ...
Заранее спасибо
JQuery DatePicker кажется не поддерживать, не григорианский календари на данный момент: http://bugs.jqueryui.com/ticket/5789 Не так ли?
После некоторого расследования я все еще сомневаюсь, что он поддерживает местные календари. Но я только что наткнулся на этот пост: http://stackoverflow.com/questions/3297652/jquery-datepicker-displaying-a-buddhist-date. Поэтому я попробую. Спасибо, Mauro – godspeed
Дорогая богиня Я не большой эксперт тайских календарей! Это просто смещение в год? – Mauro
Да, это так. Смещение составляет 543 года. Там также есть какая-то магия с високосными годами, но я только что протестировал плагин keith-wood, и, похоже, это не мешает показ 29 февраля. – godspeed