【问题标题】:Postback of one dropdown fires selectedindexchanged event of all all remaining dropdown一个下拉列表的回发会触发所有剩余下拉列表的 selectedindexchanged 事件
【发布时间】:2013-06-20 10:08:56
【问题描述】:

例子:

  <asp:DropDownList runat="server" AutoPostBack="true" ID="ddlSample">
                                    <asp:ListItem Text="text1" />
                                    <asp:ListItem Text="text2" />
                                </asp:DropDownList>

现在,如果更改上述下拉列表中的项目,它将导致所有其他下拉列表回发事件触发。

喜欢

   <asp:DropDownList EnableViewState="true" ID="ddlNewSelec" runat="server" 
     AutoPostBack="true" OnSelectedIndexChanged="ddlNewSelec_SelectedIndexChanged">
             <asp:ListItem Text="--Select Test Type--" Value="" />
   </asp:DropDownList>

详情:

页面已禁用 ViewState。我尝试为各个下拉菜单启用视图状态,但这并不重要。

知道为什么会这样。

如果您需要更多详细信息,请告诉我

编辑:

下拉菜单会触发表单上所有其他下拉菜单的 selectedindexchanged 事件。名为 ddlSample 的下拉列表没有做任何事情,只是导致回发,但为什么其他下拉列表的 selectedindexchanged 事件触发了。

附加信息:

所有输入都在 updatePanel 中,删除它们不会产生任何影响。

在页面加载中我没有在回发上做任何事情

   protected void Page_Load(object sender, EventArgs e)
   {
     if (!IsPostBack)
        {
            BindSomeDDLs();
         }
    }

【问题讨论】:

  • 所有剩余下拉列表的回发是什么意思?你是说页面不止一次回发吗?
  • Autopostback 只是连接了一个 onchange javascript 事件,该事件提交表单,恰好是整个页面。看起来它按预期工作。
  • @SanjeevRai 抱歉,这意味着它会触发表单上所有下拉菜单的 selectedindexchanged 事件
  • @Phill 抱歉,这意味着它会触发表单上所有下拉菜单的 selectedindexchanged 事件
  • 您可能正在绑定或从后面的代码中选择其他下拉列表的值?

标签: asp.net


【解决方案1】:

您没有在“ddlSample”下拉列表中绑定 SelectedIndexChanged 事件。请尝试像这样绑定该属性..

<asp:DropDownList ID="ddlSample" runat="server" AutoPostBack="true" OnSelectedIndexChanged="ddlSample_SelectedIndexChanged">
    <asp:ListItem Text="text1" />
    <asp:ListItem Text="text2" />
</asp:DropDownList>

【讨论】:

  • 我觉得我的问题不是很清楚。这是一个没有附加任何事件的测试下拉列表。问题是导致/更改下拉菜单将导致此页面上所有其他下拉菜单的选择索引,即使它们的值根本没有更改。例如,我们有 100 个下拉菜单,更改任何 drodpown 值会导致所有其他下拉菜单的 selectedchangeindex
  • 那么请更新您的问题,使用 2 个触发 selectedchangeindex 的有效下拉菜单。我的第二个猜测是您将所有下拉列表绑定到同一个 OnSelectedIndexChanged 事件,但如果没有您发布更多代码,我无法确认这一点。
【解决方案2】:

答案似乎很奇怪,但这是真的。

这只是因为 EnableViewState 属性设置为 false。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-06-08
    • 1970-01-01
    • 2021-04-12
    • 2011-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多