Добавить ссылку на скрипт (JavaScript) в диспетчер скриптов при частичной обратной передаче Microsoft AJAX
Я пытаюсь добавить ссылку на скрипт в диспетчер скриптов в случае частичной обратной передачи Microsoft AJAX, то есть пользователь нажимает на ссылку в панели обновления.
ScriptManager.RegisterClientScriptInclude(Page, Page.GetType(), "UniqueName",
Page.ResolveUrl(scriptPath));
Не работает и работает
ScriptReference script = new ScriptReference(scriptPath);
MyScriptManager.Scripts.Add(script);
Из того, что я прочитал в сети, RegisterClientScriptInclude должен работать даже при частичной обратной передаче. http://www.codeproject.com/KB/ajax/addingCssJsAjaxPartialPos.aspx
Кто-нибудь может дать какие-либо идеи, почему они не работают, или другой способ сделать это?
РЕДАКТИРОВАТЬ: Дополнительная информация.
Я работаю с очень большой унаследованной кодовой базой, в которой есть формы и менеджер скриптов на каждой странице, а не на главной странице. Я хотел бы поместить код в класс и использовать следующий вызов, чтобы добавить эффект javascript.
ClientSideScripts.BackgroundColourFade(Page, ScriptManager, Control);
Причины, по которым я хочу включить скрипт в вызов метода
- Потребности метода не должны помнить, чтобы включить сценарий
- Изменение используемого сценария требует изменения только в одном месте.
- Включайте JavaScript только тогда, когда необходимо уменьшить время загрузки страницы.
1 ответ
Посмотрите на этот SO-вопрос, потому что он отвечает на ваш вопрос:
function dynamic() { alert('dynamic'); $('#divDyn').text('Dynamic!'); } // notify that the script has been loaded <-- new! if (typeof (Sys) !== 'undefined') Sys.Application.notifyScriptLoaded();