【问题标题】:asp menu not working after partial postback部分回发后asp菜单不起作用
【发布时间】:2012-12-03 15:53:30
【问题描述】:

我有一个在我的页面上执行搜索后停止运行的 asp:menu。搜索使用更新面板并由提交按钮触发。一旦结果显示在页面上,菜单悬停效果就会停止工作。它不会再在鼠标悬停时向下展开。可点击的链接仍然有效。

该菜单位于站点的母版页中,并且位于搜索控件的更新面板之外。

感谢您的帮助!

这是菜单

  <asp:Menu ID="Menu5" runat="server" 
                                        DynamicEnableDefaultPopOutImage="False"
                                         Orientation="Horizontal"
                                         RenderingMode="List"
                                         StaticEnableDefaultPopOutImage="False"
                                         StaticPopOutImageUrl="~/Images/DownArrow.png"
                                         Visible="False" Font-Bold="False" ForeColor="Black">

                                        <Items>
                                            <asp:MenuItem PopOutImageUrl="~/Images/bullet.png" Selectable="False" Text="Add" >
                                                <asp:MenuItem Text="Item" NavigateUrl="~/Admin/CreateItem.aspx" ></asp:MenuItem>
                                                <asp:MenuItem Text="Contact" NavigateUrl="~/Admin/CreateContact.aspx" ></asp:MenuItem>
                                            </asp:MenuItem>
                                            <asp:MenuItem Text="Update" Selectable="False" Value="Update">
                                                <asp:MenuItem Text="Item" NavigateUrl="~/Admin/UpdateItem.aspx" Value="Item"></asp:MenuItem>
                                                <asp:MenuItem Text="Contact" NavigateUrl="~/Admin/UpdateContact.aspx" Value="Contact"></asp:MenuItem>
                                            </asp:MenuItem>
                                            <asp:MenuItem Text="Approve" Selectable="False"  Value="Approve" >
                                                <asp:MenuItem Text="Item" NavigateUrl="~/Admin/ApproveItem.aspx" Value="Item"></asp:MenuItem>
                                                <asp:MenuItem Text="Contact" NavigateUrl="~/Admin/ApproveContact.aspx" Value="Contact"></asp:MenuItem>
                                            </asp:MenuItem>
                                        </Items>
                                         <StaticMenuItemStyle HorizontalPadding="10px" />
                                    </asp:Menu>

这是按钮点击事件

  protected void btnSubmit_Click(object sender, EventArgs e)
    {
        if (Page.IsValid)
        {


            string keyword = txtSearch.Text.Trim();
             List<dynamic> results = SearchItems(keyword);
             List<dynamic> Cresults = SearchContacts(keyword);




            //bind and return
            lv.DataSource = results;
            lv.DataBind();


            //Contact Bind return
            LVC.DataSource = Cresults;
            LVC.DataBind();

        }
    }

【问题讨论】:

  • 更新面板里面有asp:menu吗?如果是,它可能会再次重新加载菜单,包括它附带的任何 javascript/jQuery,这会导致脚本重复,可能会混淆浏览器。
  • @MickaelCaruso 主页上没有。我只是将其添加到问题中。不属于更新面板。
  • 发布一些代码,包括代码隐藏和前端。
  • @Mark 发布了我认为有帮助的所有内容。
  • @jackncoke 导致它向下扩展的鼠标悬停代码在哪里?是 jquery 吗?

标签: c# asp.net webforms


【解决方案1】:

我的解决方案是不使用 VS 2012 中的拖放菜单。我将其替换为 Jquery Menu,该菜单编写后没有出现任何问题。

【讨论】:

    猜你喜欢
    • 2011-10-02
    • 1970-01-01
    • 2016-02-12
    • 1970-01-01
    • 1970-01-01
    • 2011-04-03
    • 1970-01-01
    • 1970-01-01
    • 2011-12-11
    相关资源
    最近更新 更多