阻止菜单项上的点击事件在asp.net中重新加载

时间:2015-12-15 09:11:17

标签: javascript c# asp.net

我正在使用带有子菜单项集合的ASP Menu控件。如果用户单击主菜单项,则重新加载并且屏幕进行回发。点击主菜单时会激怒用户,因为它只列出了类别。如何防止用户点击主菜单项时加载页面我尝试使用javascript的一些代码,但它无法正常工作。

我的ASP菜单控件:

<asp:Menu ID="mini" OnMenuItemClick="mini_MenuItemClick" runat="server" Orientation="Horizontal" >
    <Items>
        <asp:MenuItem Text="Items">
            <asp:MenuItem Text="sdaad" Value="1" >
                <asp:MenuItem Text="MenuSub1"  Value="MenuSub1" ></asp:MenuItem>
                <asp:MenuItem Text="MenuSub2" Value="MenuSub2" ></asp:MenuItem>
            </asp:MenuItem>
            <asp:MenuItem Text="qwerty" Value="qwerty">
                <asp:MenuItem Text="MenuSub" Value="MenuSub"></asp:MenuItem>
            </asp:MenuItem>
        </asp:MenuItem>
    </Items>
</asp:Menu>

Javascript来处理这个问题:

function OnMenuItemClick(s, e) {
    if (e.item.name == "Items")
        e.processOnServer = false;
}

1 个答案:

答案 0 :(得分:1)

首先,将更新面板放在标记

<asp:UpdatePanel runat="server" id="Update" UpdateModel="Conditional">
</UpdatePanel>

然后使用javascript触发它:

__doPostBack(<%# Update.ClientID%>, '');