Asp.Net非常聰明,如果您在開始處放入〜/,則會嘗試解析超鏈接的NavigateUrl
相對於它所在的或相對於應用程序根目錄的控件。我可以在超鏈接上顯式指定NavigateUrl嗎?
但我有一個情況,我想明確地設置網址爲相對路徑,我不希望它「幫助」我。
超鏈接的導航網址和HtmlAnchor的href屬性都表現出這種行爲。 是否有可能阻止此行爲 - 或者是否必須手動生成標記而不使用控件?
例如 我有一個包含asp:Hyperlinks
的文件夾[appRoot]/foo/bar
中的用戶控件。
我正在使用頁面[appRoot]/myPage.aspx
中的控件。 我希望超鏈接的href
屬性在呈現時完全等於'donkey.gif'
。
但如果我寫了下面
<asp:Hyperlink runat="server" NavigateUrl="donkey.gif" />
則所呈現的href會'foo/bar/donkey.gif'
。
由於複雜的原因,我不想進入這裏,使用「〜/ donkey.gif」不是一個選項。 另外,我無法使用ResolveUrl(string url)
來生成絕對網址。
我還沒有清楚你的問題,你能告訴我們,你在哪裏試圖指定NavigateURL Explcitly? – 2011-06-07 07:55:49
您如何期待'NavigateUrl =「donkey.gif」'永遠解析爲'images/donkey.gif'?圖像來自哪裏? – 2011-06-07 10:13:08
@Dan Diplo - 我的錯誤。問題已被編輯/更正 – 2011-06-07 13:19:10