【问题标题】:Linking two dropdown lists together not working将两个下拉列表链接在一起不起作用
【发布时间】:2012-08-07 18:12:24
【问题描述】:

我有一个表单,其中有两个从同一数据集填充的下拉列表,因此它们的值应该相等。我在代码中有 OnSelectedIndexChanged 事件,并且第二个下拉菜单的 AutoPostBack 设置为 true。预期的行为是,当用户从第二个下拉列表中选择一个项目时,第一个应该更改为第二个中选择的内容。我在活动中的代码如下所示:

if(!ddl1.SelectedValue.Equals(ddl2.SelectedValue)
{
    ddl1.SelectedValue = ddl2.SelectedValue;
}

OnSelectedIndexChanged 事件还包含根据第二个下拉列表的选择重新绑定页面底部的数据网格的代码。长话短说,datagrid 发生了变化,但第一个下拉列表并没有改变它的值。回发似乎不应该限制页面上的更改,所以我在这里缺少什么?

【问题讨论】:

    标签: c# asp.net


    【解决方案1】:
    if(!ddl1.SelectedValue.Equals(ddl2.SelectedValue)
    {
         ddl1.ClearSelection();
         ddl1.Items.FindByValue(ddl2.SelectedValue).Selected = True
    }
    

    【讨论】:

    • 试过这个。页面上出现错误,指出无法同时选择多个值。尝试取消选择当前值,然后它回到正常的“不改变其值”行为。
    • ddl1.ClearSelection(); 在选择之前
    • 这行得通,谢谢!猜猜我忘记了 .ClearSelection() 方法;我的做法不同。
    【解决方案2】:

    尝试以下方法:

        if (!ddl1.SelectedIndex == ddl2.SelectedIndex)
    {
    ddl1.SelectedIndex == ddl2.SelectedIndex
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-06-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-31
      • 1970-01-01
      相关资源
      最近更新 更多