【问题标题】:Roll back dropdownlist after menuItem eventmenuItem 事件后回滚下拉列表
【发布时间】:2011-04-29 10:58:54
【问题描述】:

我在我的母版页中创建了一个下拉列表,我可以在其中选择一家公司。选择公司后,我会被重定向,但我正在寻找的是一种在从导航栏中单击另一个菜单项后将此下拉列表设置回默认值的方法。

我为菜单的值创建了一个事件。 这是我正在使用的代码:

protected void MenuAdmin_MenuItemClick(object sender, MenuEventArgs e)
    {
        if (e.Item.Value == "Something")
        {
            DropDownListComp.SelectedValue = "-1";
            Response.Redirect("~/test/test.aspx");
        }
    }

我的菜单有一个 menuItem,其值为 Something。

<asp:Menu ID="MenuAdmin" runat="server" CssClass="menu" 
   EnableViewState="false" IncludeStyleBlock="false" Orientation="Horizontal" 
   Visible="false" Font-Names="Verdana" onmenuitemclick="MenuAdmin_MenuItemClick">
      <Items>
          <asp:MenuItem  Text="Something" Value="Something"/>
          </asp:MenuItem>
      </Items>
</asp:Menu>

我创建的列表项中值为 -1 的下拉列表如下所示:

 <asp:DropDownList ID="DropDownListComp" runat="server"  
  onselectedindexchanged="DropDownListComp_SelectedIndexChanged"
  DataSourceID="SqlDataSourceComp" DataTextField="tCompName"  
  DataValueField="tCompId" AutoPostBack="true" AppendDataBoundItems="True">
     <asp:ListItem Text="--Select company--" Value ="-1" Selected="False"></asp:ListItem>
 </asp:DropDownList>

所以我想知道为什么这不起作用。菜单会重定向,但不会将我的下拉列表放回 --Select company--。我尝试用断点找出它,当它运行 if 语句时,它说值是-1。这就像我的主页没有更新,只是主要内容。所以我想我必须在活动中回帖或做些什么?谢谢你的帮助。

【问题讨论】:

    标签: c# asp.net drop-down-menu postback menuitem


    【解决方案1】:

    我在其他网站上看到了同样的问题。他们使用下拉列表旁边的按钮解决了这个问题,该按钮从下拉列表中获取 selectedValue 的值并重定向。

    实际上与您第一次在下拉列表中选择任何内容时触发的事件相同。

    问候。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-01-23
      • 1970-01-01
      • 1970-01-01
      • 2016-12-08
      • 2017-11-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多