2012-04-06 148 views
0

我有一個包含位於多個文件夾中的頁面的asp.net應用程序。我有我的.js文件還一「JS」文件夾,我加入了他們的母版頁一樣的頭參考:如何設置asp.net應用程序的根路徑

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

現在,當我主頁上,腳本加載罰款。但是,當我一些其他的頁面出現在另一個文件夾(物理爲例)上,路徑將追加,所以我得到的錯誤:

Failed to load resource: the server responded with a status of 404 (Not Found)

類似的事情也發生了我的形象路徑和<a>標籤也。

現在我想給相對於根路徑是這樣的路徑:

~/JS/VerticalMenu.js 

但這~不帶我去我的應用程序的根。我需要設置~應該導致的位置嗎?如果是,那麼在哪裏以及如何?

<script src="~/common/scripts/safeguard.common.js" type="text/javascript"></script> 

您也可以嘗試只/前綴的路徑:

<script src="/common/scripts/safeguard.common.js" type="text/javascript"></script> 
+0

<腳本類型= 「文/ JavaScript的」 SRC = 「JS/VerticalMenu.js」>是我如何在頭 – 2012-04-06 15:54:38

+0

加入我的腳本嘗試使用之前'JS'斜槓,如:'<腳本類型=「text/javascript」src =「/ JS/VerticalMenu.js」>' – mshsayem 2012-04-06 15:56:31

回答

1

試試這個

+0

對象[對象DOMWindow]沒有方法'addEvent'是我現在正在... – 2012-04-06 16:20:09

+0

聽起來像是一個Javascript文件的問題,這可能是一個單獨的問題。 – 2012-04-06 17:49:07

0

如果它是一個ASP.NET應用程序,您可以通過在前面的路徑~/訪問根:

<script type="text/javascript" 
    src="<%=Page.ResolveUrl("~/JS/VerticalMenu.js")%>"></script> 
+0

如果應用程序位於虛擬文件夾中,如'http:// www.mysite.com/MyApp /',則不起作用。 – 2012-04-06 16:02:26

+0

我認爲'〜/'應該解析爲應用程序的根目錄,即使它在虛擬目錄中。 – 2012-04-06 16:03:28

+1

No.〜/不工作。路徑被附加到如下所示:http:// localhost:50089/Tutorial_Pages/Physics /〜/ JS/VerticalMenu.js – 2012-04-06 16:05:03

5

@Charlie Kilian答案是一個可行的解決方案但是,您還可以在頁面頂部的base tag中指定頁面中所有相對URL的基本URL。

<head> 
    <base href="http://www.yourdomain.com/anyvirtualdirectory/" /> 
</head> 
+0

+1:如果這個工作,這是一個很好的解決方案。 – 2012-04-06 17:08:06

+0

我忘了''標籤。這也是一個很好的解決方案。 – 2012-04-06 17:50:24

相關問題