2013-05-14 49 views
1

我有一個asp:菜單,其中目前有4菜單項。我已經能夠爲整個菜單設置id,但菜單項的超鏈接大部分是相同的。我希望能夠使用Id或類似標識來識別每個人。這可能嗎?是否可以將一個Id分配給一個asp:MenuItem?

這是我的菜單:

<asp:Menu ID="NavigationMenu" runat="server" Orientation="Horizontal" 
      OnMenuItemClick="NavigationMenu_OnMenuItemClick" 
      CssClass="Menu"> 
      <StaticMenuItemStyle ForeColor="Black" CssClass="MenuItem" ItemSpacing="20" /> 
      <StaticSelectedStyle CssClass="MenuItemSelected"></StaticSelectedStyle> 
      <Items> 
       <asp:MenuItem Value="0" Text="New" Selected="True"></asp:MenuItem> 
       <asp:MenuItem Value="1" Text="Approved"></asp:MenuItem> 
       <asp:MenuItem Value="2" Text="Rejected"></asp:MenuItem> 
       <asp:MenuItem Value="3" Text="Done"></asp:MenuItem> 
      </Items> 
</asp:Menu> 

這是結果在瀏覽器中的第二和第三的菜單項(目前未選擇)

<a class="NavigationMenu_1 MenuItem NavigationMenu_3" href="javascript:__doPostBack('NavigationMenu','2')" style="border-style:none;font-size:1em;">Rejected</a> 


<a class="NavigationMenu_1 MenuItem NavigationMenu_3" href="javascript:__doPostBack('NavigationMenu','3')" style="border-style:none;font-size:1em;">Done</a> 

正如你可以看到他們都非常相似。任何解決方案?

+0

您可以嘗試NavigationMenu.ClientID – 2013-05-14 08:46:08

+0

請有它看看http://stackoverflow.com/問題/ 8427086 /客戶端ID-的,菜單項 – 2013-05-14 08:54:27

回答

0

我們能不能給ID爲菜單項

你可以得到「菜單對象」由以下模式的JavaScript。

var myMenu = document.getElementById(「MyMenu」);

如果您檢查呈現的HTML,您將看到它呈現爲一個表格(ID爲MyMenu)和一個元素用於每個項目。

所以你可以隱藏/顯示您的任何元素這樣的:

的document.getElementById( 「MyMenu菜單」)tBodies [0] .rows [0] .style.display = 「無」;

下面是桌子上的DOM元素一個很好的教程:

http://www.howtocreate.co.uk/tutorials/javascript/domtables

caption 
    childNodes[] 
tHead 
    rows[] 
     cells[] 
      childNodes[] 
tFoot 
    rows[] 
     cells[] 
      childNodes[] 
tBodies[] 
    rows[] 
     cells[] 
      childNodes[] 
相關問題