0

我有两个下拉列表。当我从第一个 ddl 中选择一些项目时,第二个我得到一些其他值可供选择。我有一个问题,因为当我从第二个 ddl 中选择一些值然后在第一个 ddl 中选择标准值时,页面加载后仍然有第二个 ddl 的旧值。当我想在页面加载之前在第二个 ddl 中设置默认值时应该怎么做?

编辑:添加代码:

    protected void Page_Load(object sender, EventArgs e)
{
    if (!Page.IsPostBack)
    {
        GetFunctions();
        GetTeams();
        LocateCities();
    }
    else
    {
        if (ddlFunctions.Text.ToString() == "All  Functions")
        {
            ddlTeams.Text = " All  Teams";
            LocateCities();
        }
        else
        {
            LocateCities();
        }
    }
}

protected void ddlFunctions_SelectedIndexChanged(object sender, EventArgs e)
{
    if (ddlFunctions.Text.ToString() == "All  Functions")
    {
        Teams.Visible = false;
    }
    else
    {
        Teams.Visible = true;
        GetTeams();
    }
}

与 ddl 的绑定在 GetFunctions()(第一个 ddl)和 GetTeams()(第二个 ddl)中。唯一的问题是当我在第二个 ddl 中选择了一些值并在第一个 ddl 中更改值时(第二个 ddl 的旧值进入存储过程,导致 LocateCities() 方法返回 0 值)。当我在第一个 ddl 中更改值时,我希望将所有团队都传递给程序的默认值。我希望我解释了exerything。如果没有,请告诉我。

4

1 回答 1

1

使用第一个的SelectedIndexChanged 事件设置第二个的默认值。

像这样:

void foo_SelectedIndexChanged(object sender, EventArgs e) {
    bar.SelectedIndex = ((DropDownList)sender).SelectedIndex;
    // or whatever your logic is. Merry coding.
}
于 2013-06-12T14:52:21.837 回答