2009-06-22 57 views
5

我想在名爲「samples」的子文件夾中使用位於根目錄中的masterpage的ASP.NET中的jQuery庫。目前,對jQuery腳本的引用位於主頁面的頭標記中。如果我創建的頁面也在根目錄中,則一切正常。如果我將頁面移動到「samples」子目錄,jquery會中斷。在子文件夾中使用JQuery當MasterPage位於根文件夾中

我可以使用類似的頭標記以下解決問題:

<script src="<%=ResolveUrl("~/js/jquery.js")%>" type="text/javascript"></script>

......但後來我失去使用jquery智能感知能力,因爲我不再直接連接在設計時間到文件。

所以我的問題是這樣的:當我的頁面位於子文件夾中且母版頁位於根目錄中時,如何在.aspx頁面上使用jQuery庫而不會失去與智能感知的連接?

回答

10

簡單地使用這樣的:

<script src="/js/jquery.js" type="text/javascript"></script> 

/以前JS做的伎倆。我總是保持我的CSS和JavaScript文件在不同的文件夾中,並使用這種調整來正確地包含它們。

智能感知你可以試試這招:

<%if(true){%> 
    <script src="/js/jquery.js" type="text/javascript"></script> 
<%}%> 

我不能夠回憶起這一招的來源。

+0

我做同樣的,一個JavaScript和直接的根源,然後一個css文件夾中使用服務器相對URI指向我的CSS/JS文件。 – Colin 2009-06-22 07:47:18

+0

我已經驗證了/ js確實允許代碼在兩個文件夾中運行(因此它是比ResolveUrl更好的解決方案),但它仍然不會讓我看到智能感知。你列出的intellisense技巧也不起作用。 – shizbiz 2009-06-22 07:56:18

1

你可以使用腳本管理器包括JS文件:

<asp:ScriptManager runat="server"> 
    <Scripts> 
     <asp:ScriptReference Path="~/js/jquery.js" /> 
    </Scripts> 
</asp:ScriptManager> 
相關問題