Недавно я создавал веб-сайт, который использует .NET Framework 3.5 SP1 и AJAX Control Toolkit. Стандартные элементы управления AJAX, такие как UpdatePanel, работают без проблем. Как только я добавляю элемент управления CollapsiblePanelExtender из AJAXControlToolkit на страницу, я получаю ошибку Javascript. (ПРИМЕЧАНИЕ: эта проблема возникает в Firefox. IE работает без проблем.)
this.dateTimeFormat is undefined
на линии
this._upperAbbrMonths = this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthNames);
в функции
function Sys$CultureInfo$_getAbbrMonthIndex(value) {
if (!this._upperAbbrMonths) {
this._upperAbbrMonths = this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthNames);
}
return Array.indexOf(this._upperAbbrMonths, this._toUpper(value));
}
Я провел глубокий поиск в Google по этому вопросу, и эта функция имела ошибку в предварительных версиях ASP.NET AJAX. Эта проблема была вызвана тем, что переменная _upperAbbrMonths неправильно указана как _upperMonths в операторе возврата. Хотя эта функция вызывает у меня ошибку, похоже, это обновленная версия с исправленным кодом.
Как лучше всего решить проблему?
И даже если существует простой способ исправить javascript, как это изменение может быть реализовано, поскольку сценарий создается с помощью ASP.NET AJAX framework?