2013-06-19 54 views
0

我需要添加特定的js文件到頁面。 在Page_Load,我想這樣的:ASP.NET在頁面加載時添加js文件

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

它不工作。

回答

2

您可以嘗試此解決方案,將始終工作。使用:

Page.Header.Controls.Add(new LiteralControl("<script type='text/javascript' src='script.js'></script>")); 
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); 
    } 
0

確保您沒有在其他地方使用"MyTab"註冊腳本。這是腳本的a key

另外HttpRuntime.AppDomainAppPath將返回the physical path,這使我認爲它可能會返回例如C:\Program Files\...這將不適用於訪問該網站的人。

也許嘗試:

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