Почему мой AJAX Accordion Control перестал работать?
Я действительно даже не знаю, с чего начать. Я пытался кое-что сделать с помощью средства просмотра отчетов в веб-приложении ASP.Net, и в следующий раз, когда я запустил свой проект, аккордеон AJAX перестал расширяться на совершенно другую страницу. Я попытался переустановить AJAXControlToolkit с помощью NuGet, но это не помогло. Страница показывает, что панели аккордеона свернуты, и нажатие на них не приводит к их расширению.
edit: Хорошо, значит, на странице была ошибка Javascript, но я не знаю, что делать с ней. Ошибка исходит от scriptresource.axd. Ошибка возникает на каждой странице моего сайта, и это:
Sys.ArgumentNullException: Sys.ArgumentNullException: Value cannot be null.
Parameter name: elements [http://localhost:54342/ScriptResource.axd?d=oLn_YfKUbuAZmIp8wPx_MGof0M_lenV-JW2kiI5YDekmr8rZkMCuAuKyOZO06cyZlzhzJQ4BbUMfJShMBgWgM8TnLZXjah8CDfymeaxo44H_TH5anoZTptNOkXlY-ZNjFoS3wUNWvcmBHzSSm5K9ww2&t=252a36c5:4869]
функция, в которой выдается эта ошибка:
$addHandler = $type.addHandler = function DomEvent$addHandler(elements, eventName, handler, autoRemove) {
/// <summary locid="M:J#Sys.UI.DomEvent.addHandler">A cross-browser way to add a DOM event handler to an element.</summary>
/// <param name="elements">The element or text node, or array of elements or text nodes, that exposes the event. You may also pass a DOM selector or array of DOM selectors.</param>
/// <param name="eventName" type="String">The name of the event. Do not include the 'on' prefix, for example, 'click' instead of 'onclick'.</param>
/// <param name="handler" type="Function">The event handler to add.</param>
/// <param name="autoRemove" type="Boolean" optional="true" mayBeNull="true">Whether the handler should be removed automatically when the element is disposed of, such as when an UpdatePanel refreshes, or Sys.Application.disposeElement is called.</param>
var e = Function._validateParams(arguments, [
{name: "elements"},
{name: "eventName", type: String},
{name: "handler", type: Function},
{name: "autoRemove", type: Boolean, mayBeNull: true, optional: true}
]);
if (e) throw e;
^^ здесь происходит в последней строке.
кажется, что я, вероятно, упускаю что-то простое, как... добавление идентификатора к элементу управления где-то или что-то, но я просто догадываюсь
редактировать 2: я нашел виновника. На главной странице у меня был пользовательский элемент управления, в котором у меня был модальный всплывающий экстендер, некоторые свойства которого (OKButton, CancelButton и т. Д.) Были установлены на элементы управления, которых не было.
1 ответ
Извините за смутный вопрос... Он сводится к следующему: что может привести к тому, что элемент управления AJAX неожиданно перестанет работать?
и ответ, как указано в комментариях, заключается в том, что обычно это происходит из-за ошибки JavaScript.