2

我正在尝试在 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);

我想在方法调用中包含脚本的原因是

  1. 方法的使用不必记住包含脚本
  2. 更改使用的脚本只需要更改一处
  3. 仅在需要时才包含 javascript,以降低页面的加载时间
4

1 回答 1

2

看看这个 SO-Question 因为它回答了你的问题:

function dynamic() {
  alert('dynamic');
  $('#divDyn').text('Dynamic!');
}
// notify that the script has been loaded <-- new!
if (typeof (Sys) !== 'undefined') Sys.Application.notifyScriptLoaded();
于 2011-06-09T13:24:57.067 回答