2013-12-13 25 views
1

我有一個需要JavaScript文件的ASP.NET UserControl。這是一個jQuery插件。我只想在頁面上使用UserControl時添加此文件。因爲它是一個jQuery插件,我需要在添加jQuery文件後添加它。如何將一個JavaScript文件從UserControl添加到ASP.NET頁面一次?

因爲母版頁等,當我使用RegisterClientScriptInclude時,該腳本被添加到jQuery腳本之前,並且不起作用。

RegisterStartupScript會做的伎倆,但似乎不工作的JavaScript文件(它確實如果你提供實際的JavaScript代碼)。

更重要的是,我不希望控件添加腳本兩次,如果我將它添加到頁面兩次。

看來這一定是微不足道的,但我不能得到它的工作。

+0

如果用戶控件包含jquery文件,那你應該在哪裏?你是否用doc調用你自己的js文件? –

+0

jQuery默認包含在內,因爲我們在應用程序中廣泛使用它。我們使用doc調用插件,但插件本身包含需要jQuery的代碼。由於這使用了編寫jQuery插件的默認方式,因此添加代碼時會執行代碼(如果我錯了,請糾正我的錯誤)。 – Peter

回答

2

RegisterStartupScript也可以註冊js文件。

var clientScriptManager = Page.ClientScript; 

if(!clientScriptManager.IsStartupScriptRegistered("a_plugin")) 
{ 
    clientScriptManager.RegisterStartupScript(Page.GetType(), "a_plugin", "<script src=\"/js/a_plugin.js\"></script>"); 
} 
+0

超級,儘管對IsStartupScriptRegistered進行檢查並不需要,因爲ASP.NET使用該類型作爲鍵來查看腳本是否已經註冊。另外,您可能想要使用typeof(),請參閱[本文](http://weblogs.asp.net/leftslipper/archive/2007/04/13/registering-scripts-in-asp-net-controls-the右漢字-way.aspx)。 – Peter

+0

不知道,謝謝 – nativehr

相關問題