Is it possible to add javascript reference dynamically from code behind aspx.cs?
Like this:
private void AddScriptReference(string path)
{
//Add refer
You can use the ASP.NET Ajax ScriptManager to do so.
Add it to your masterpage, and use ScriptManager.RegisterClientScriptInclude from your codebehind.
Bit late but thought I'd post an answer to this in case anybody else needs it. This solution negates the need for a ScriptManager.
Basically, it's just a case of creating a control and then adding to the head. Here's the code.
LiteralControl javascriptRef = new LiteralControl("<script type='text/javascript' src='path_to_script.js'></script>");
Page.Header.Controls.Add(javascriptRef);
For those who want to know the syntax, here it is:
Master Page:
<asp:ScriptManager ID="ScriptManager" EnablePageMethods="true" runat="server"></asp:ScriptManager>
Code behind:
ScriptReference sr = new ScriptReference("path-to-js.js");
ScriptManager sm = (ScriptManager)this.Master.FindControl("ScriptManager");
sm.Scripts.Add(sr);
Or:
ScriptManager.RegisterClientScriptInclude(this.Page, GetType(), "UniqueID", "path-to-js.js");
But none of these solutions actually add the script to the head of the page..