Ответ 1
Вы можете использовать ASP.NET Ajax ScriptManager
, чтобы сделать это.
Добавьте его на свою главную страницу и используйте ScriptManager.RegisterClientScriptInclude
из вашего кода.
Можно ли динамически добавлять ссылку на javascript из кода позади aspx.cs?
Вот так:
private void AddScriptReference(string path)
{
//Add reference to <head></head>
}
Должно привести к добавлению ссылки script в начало страницы, например:
<html>
<head>
<script type="text/javascript" src="path-to-script.js"></script>
</head>
</html>
Возможно ли это?
Вы можете использовать ASP.NET Ajax ScriptManager
, чтобы сделать это.
Добавьте его на свою главную страницу и используйте ScriptManager.RegisterClientScriptInclude
из вашего кода.
Бит поздно, но я подумал, что отправлю ответ на этот вопрос, если кому-то это понадобится. Это решение отрицает необходимость ScriptManager.
В принципе, это всего лишь случай создания элемента управления, а затем добавления в голову. Вот код.
LiteralControl javascriptRef = new LiteralControl("<script type='text/javascript' src='path_to_script.js'></script>");
Page.Header.Controls.Add(javascriptRef);
Для тех, кто хочет знать синтаксис, вот он:
Мастер-страница:
<asp:ScriptManager ID="ScriptManager" EnablePageMethods="true" runat="server"></asp:ScriptManager>
Код позади:
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");
Но ни одно из этих решений фактически не добавляет script в начало страницы.