母版頁中<%=ResolveUrl() %>
阿新 • • 發佈:2017-12-18
服務器 兩種 gpo url dex ref log spa .aspx
假設母板頁在根目錄下,內容頁abc.aspx在目錄xyz下,abc.aspx繼承母板頁,菜單項Index.aspx在根目錄下。
如果母板頁的菜單鏈接這麽寫:
<a href="Index.aspx" >首 頁</a> 或這麽寫: <a href="~/Index.aspx" >首 頁</a>
那麽在根目錄下繼承了母板頁的內容頁點擊“首頁”訪問是沒有問題的。但在xyz目錄下的abc.aspx頁面中點擊“首頁”時,則菜單項鏈接默認為“xyz/index.aspx"。但index.aspx實際是在根目錄下的,則點擊後就會出錯,提示找不到Index.aspx頁面。
為解決這個問題,母板頁的菜單鏈接正確的寫法是:
<a href="<%=Page.ResolveUrl("~/Index.aspx") %> ">首 頁</a>
其中Page.ResolveUrl("~/Index.aspx") 相當於“在網站根目錄中查找網頁Index.aspx”
圖片鏈接則有兩種寫法:
1.跟上面的鏈接一樣:
<img src="<%=Page.ResolveUrl("~/image/in01.jpg" )%>" />
2.在img控件加上runat="server",服務器會自動判斷路徑,比如:
<img src="image/in01.jpg" runat="server" />
母版頁中<%=ResolveUrl() %>