0

有没有办法在 MenuItem Control Onclick 事件中交换图像。我的代码为

<asp:Menu ID="menuTabs" CssClass="menuTabs" StaticMenuItemStyle-CssClass="tab" StaticSelectedStyle-CssClass="selectedTab"                        OnMenuItemClick="menuTabs_MenuItemClick" runat="server" Orientation="Horizontal"
BackColor="#f4f4f4" BorderStyle="None">
<StaticSelectedStyle CssClass="selectedTab"></StaticSelectedStyle>
<StaticMenuItemStyle CssClass="tab"></StaticMenuItemStyle>
<Items>
<asp:MenuItem Text="" Value="0" Selected="true" ImageUrl="~/Images/Widget1.jpg"    />
<asp:MenuItem Text="" Value="1" ImageUrl="~/Images/Widget2.jpg"/>
</Items>
</asp:Menu>    
<asp:MultiView ID="multiTabs" ActiveViewIndex="0" runat="server">
<asp:View>
</asp:View>
</asp:MultiView>

代码隐藏:

 protected void menuTabs_MenuItemClick(object sender, MenuEventArgs e)
    {
    multiTabs.ActiveViewIndex = Int32.Parse(menuTabs.SelectedValue);
    int i;            
    for (i = 0; (i <= (menuTabs.Items.Count - 1)); i++)
    { if ((i == Int32.Parse(e.Item.Value)))
    { menuTabs.Items[i].ImageUrl = "/Images/Widget1.jpg";
      menuTabs.Items[i].PopOutImageUrl = "/Images/Widget2.png";
    }
    else
    { menuTabs.Items[i].ImageUrl = "/Images/Widget1_over.jpg";
      menuTabs.Items[i].PopOutImageUrl = "/Images/Widget2_over.png";
    }
    } }

我不能在 Jquery 中使用正常的图像交换,因为控件项也没有 id 值...任何关于交换 MenuItem 控件的建议。??

4

1 回答 1

1

阿特拉特我得到了这个。

 protected void menuTabs_MenuItemClick(object sender, MenuEventArgs e)
        {
            multiTabs.ActiveViewIndex = Int32.Parse(menuTabs.SelectedValue);
            if (menuTabs.Items[0].Selected == true)
            {

                menuTabs.Items[0].ImageUrl = "~/Images/widget1_over.png";
                menuTabs.Items[1].ImageUrl = "~/Images/widget2.png";
            }

            if (menuTabs.Items[1].Selected == true)
            {
                menuTabs.Items[1].ImageUrl = "~/Images/widget2_over.png";
                menuTabs.Items[0].ImageUrl = "~/Images/widget1.png";

            }
        }
于 2012-09-24T11:46:38.497 回答