2011-03-22 36 views
0

我正在使用asp menu.I想要禁用它并使用javascript启用它。 请帮助如何使用javascript禁用asp.net菜单

<asp:Menu ID="MainMenu" runat="server" Orientation="Horizontal" DataSourceID="HAPSMainMenu" 
       MaximumDynamicDisplayLevels="3" DynamicEnableDefaultPopOutImage="true" StaticEnableDefaultPopOutImage="false" 
       CssClass="mainMenu" DynamicVerticalOffset="1" DynamicHorizontalOffset="0" 
       OnMenuItemDataBound ="mainMenu_DataBound" Height="18pt" Width="100%" 
       > 

       <StaticMenuItemStyle CssClass="menuItem" Width="125" /> 
       <DynamicMenuStyle CssClass="subMenu" /> 
       <DynamicMenuItemStyle CssClass="subMenuItem" Width="120pt" /> 
       <DynamicHoverStyle CssClass="subMenuItemHover" /> 
       <DynamicSelectedStyle CssClass="dynamicselectedStyle" /> 
       <StaticHoverStyle CssClass="menuHover" ForeColor="midnightblue"/> 
       </asp:Menu> 

我想禁用的JavaScript整个菜单栏和我使用的Firefox有菜单ID ...我希望这将禁用整个菜单的声明。

+0

请发表你试过吗?也许有些代码块? – MattC 2011-03-22 16:31:29

回答

0

您是否尝试将asp:Menu放入div然后禁用div?

<div id="myDiv"> 
...<asp:Menu ... 
</div> 

然后在某处你的客户端代码,这样做:

var myDiv = document.getElementById('myDiv'); 

myDiv.disabled = true; 
+0

我只是试过它。是它的工作...但链接加固,但如果我clik上它链接工作...我想禁用它就像它owuld被disabeled如果我打开弹出窗口 – abbas 2011-03-22 16:52:42

+0

您需要查看呈现的HTML。我认为asp:Menu控件呈现出

  • link1.html
类型标记。您可以尝试getElementByTagName(“li”),然后循环结果并检查.classname属性,如果它是menuItem,则设置onclick = null; – MattC 2011-03-22 17:02:48

1

你有jQuery吗?你想让菜单消失吗?

也许类似于$(".mainMenu").hide()

+0

不,我不使用jquery ...我不想隐藏菜单...我想用户无法使用菜单.... buitthe菜单应该显示。 – abbas 2011-03-22 16:42:06

+0

我想要类似文档..(menuid).disabled = true; – abbas 2011-03-22 16:43:01

+0

然后你应该将'selectable'属性设置为'False'。编辑:您可能想要先测试IsPostBack。 – 2011-03-22 16:44:13