从代码后面添加JavaScript引用(C#)

是否可以从aspx.cs后面的代码动态添加javascript引用?

像这样:

private void AddScriptReference(string path) { //Add reference to  } 

应该导致脚本引用被添加到页面的头部,如下所示:

      

这可能吗?

您可以使用ASP.NET Ajax ScriptManager来执行此操作。

将其添加到您的母版页,并使用您的代码隐藏中的ScriptManager.RegisterClientScriptInclude

有点迟,但我想我会发布一个答案,万一其他人需要它。 此解决方案无需使用ScriptManager。

基本上,它只是创建一个控件然后添加到头部的情况。 这是代码。

 LiteralControl javascriptRef = new LiteralControl(""); Page.Header.Controls.Add(javascriptRef); 

对于那些想要了解语法的人,这里是:

母版页:

  

代码背后:

 ScriptReference sr = new ScriptReference("path-to-js.js"); ScriptManager sm = (ScriptManager)this.Master.FindControl("ScriptManager"); sm.Scripts.Add(sr); 

要么:

 ScriptManager.RegisterClientScriptInclude(this.Page, GetType(), "UniqueID", "path-to-js.js"); 

但是这些解决方案都没有将脚本添加到页面的头部。