2014-10-20 161 views
0

我已經看到了幾個其他問題解決這個問題,但沒有一個解決我遇到的問題。Sitemapnode父菜單項不可點擊

如果您從網站地圖節點中刪除url屬性,它仍然是可點擊的,即它仍然呈現爲標籤,因此可以點擊並觸發回發。我已經爲我的菜單中的'父'網站地圖節點完成了這項工作,並且導致出現問題,因爲我不希望點擊這些項目時引發回發。

在代碼中,我做了父菜單項「selectable = false」,它們呈現爲一個跨度而不是錨點,但是造型完全不同,我甚至不能進入「子」菜單項因爲當我嘗試將鼠標懸停在它們上方時它們會消失。

有沒有辦法使'父'sitemapnode項目不可點擊,非錨點標籤,以便沒有回發被觸發,如果他們被點擊?

我的代碼:Web.sitemap中

<siteMapNode title="Maintenance" description="Admin functions" > 
    <siteMapNode url="~/UserAdmin/UserAdmin.aspx" title="Manage Users" roles="Admin" description="Manage Users" /> 
    <siteMapNode url="~/UserAdmin/UserDetails.aspx?mode=new" title="Create User" roles="Admin" description="Create User"/> 
</siteMapNode> 

C#

if (node.Title == "Maintenance") 
    e.Item.Selectable = false; 

我已經開始尋找到黑客對我的母版樣式應用該錨標記用於類設置selectable = false時呈現的跨度。但我寧願不必。

在此先感謝

回答

0

SiteMapNode取出URL標記,在Web.Config添加

SecurityTrimmingEnabled = false 

這將使該菜單項不可點擊。