ASP.NET在页面加载时添加js文件

时间:2013-06-19 09:21:37

标签: javascript asp.net

我需要在页面中添加特定的js文件。 在Page_Load,我正在尝试这个:

ClientScript.RegisterClientScriptInclude("MyTab", HttpRuntime.AppDomainAppPath + "\\scripts\\" + tabName);

它不起作用。

3 个答案:

答案 0 :(得分:2)

您可以尝试这种始终有效的解决方案。使用方法:

Page.Header.Controls.Add(new LiteralControl("<script type='text/javascript' src='script.js'></script>"));

答案 1 :(得分:0)

您可以简单地执行此操作,而无需在代码隐藏中加载它:

 <asp:ScriptManager ID="sm" runat="server">
   <Scripts>
     <asp:ScriptReference Path="./script.js" />
   </Scripts>
</asp:ScriptManager> 

如果要在运行时添加或更改脚本文件,只需将ScriptManager保留在标记中并按以下方式访问:

   ScriptManager sm = ScriptManager.GetCurrent(Page);
   if (Smgr != null) 
   {
     ScriptReference sr = new ScriptReference();
     sr.Path = "~/Scripts/Script.js";
     sm.Scripts.Add(sr);
   }

答案 2 :(得分:0)

确保您没有在其他地方使用"MyTab"来注册脚本。脚本是a key

同样HttpRuntime.AppDomainAppPath将返回the physical path,这使我认为它可以返回例如C:\Program Files\...,这对访问该网站的人不起作用。

也许试试:

ClientScript.RegisterClientScriptInclude("MyTab", Page.ResolveClientUrl("~\\scripts\\" + tabName));