Я использовал различные «исправления», чтобы сделать кнопку «Сегодня», и выбрать дату, и до сих пор все они работали хорошо в Firefox, но IE загружается, когда я их использую. Всякий раз, когда я нажимаю кнопку «Сегодня», выбирается дата, поле ввода обновляется, а датапикер закрывается, но IE немедленно открывает другую дату, которая не может быть закрыта, если вы не откроете новую дату.JQuery-UI datepicker ошибки, когда я взламываю кнопку «сегодня», чтобы также выбрать дату, но только в IE
Это DatePicker код с исправлениями я использовал
var $j = jQuery.noConflict();
$j('#data1, #data2').datepicker({ dayNames: ['Duminica', 'Luni', 'Marti', 'Miercuri', 'Joi', 'Vineri', 'Sambata'], dayNamesMin: ['Du', 'Lu', 'Ma', 'Mi', 'Jo', 'Vi', 'Sa'], firstDay: 1,
monthNames: ['Ianuarie','Februarie','Martie','Aprilie','Mai','Iunie','Iulie','August','Septembrie','Octombrie','Noiembrie','Decembrie'],
monthNamesShort: ['Ian','Feb','Mar','Apr','Mai','Iun','Iul','Aug','Sep','Oct','Noi','Dec'],
showOtherMonths: true,
selectOtherMonths: true,
dateFormat: 'yy-mm-dd',
defaultDate: new Date(),
changeMonth: true,
showButtonPanel: true, currentText: 'Astazi',
changeYear: true
});
Первые починки я использовал:
$j('button.ui-datepicker-current').live('click', function() {
$j.datepicker._curInst.input.datepicker('setDate', new Date()).datepicker('hide');
});
только после того, как я инициализировать DatePicker.
переписал также функцию с
var _gotoToday = jQuery.datepicker._gotoToday;
// datepicker is directly inside the jQuery object, so override that
jQuery.datepicker._gotoToday = function(a){
var target = jQuery(a);
var inst = this._getInst(target[0]);
// call the old function, so default behaviour is kept
_gotoToday.call(this, a);
// now do an additional call to _selectDate which will set the date and close
// close the datepicker (if it is not inline)
jQuery.datepicker._selectDate(a,
jQuery.datepicker._formatDate(inst,inst.selectedDay, inst.selectedMonth, inst.selectedYear));
}
также попытался просто добавить
this._setDateDatepicker(target, new Date());
this._selectDate(id, this._getDateDatepicker(target));
в конце функции _gotoToday
Все они сделали именно то, что вы ожидали бы в Firefox но оставил мне вопрос, о котором я упоминал выше, когда он используется с IE.