0

2 つのドロップダウン リストがあります。最初の ddl からアイテムを選択すると、2 番目に選択する他の値が得られます。2 番目の ddl から値を選択し、最初の ddl で標準値を選択すると、ページが読み込まれた後も 2 番目の ddl の古い値が残っているため、問題があります。ページが読み込まれる前に 2 番目の 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() (2 番目の ddl) にあります。唯一の問題は、2 番目の ddl で値を選択し、最初の ddl で値を変更した場合です (2 番目の ddl の古い値がストアド プロシージャに移動し、LocateCities() メソッドが 0 の値を返す)。最初の ddl で値を変更すると、すべてのチームがプロシージャに渡されました。私は私がexerythingを説明したことを願っています. いいえの場合はお知らせください。

4

1 に答える 1

1

最初のSelectedIndexChanged イベントを使用して、2 番目のデフォルト値を設定します。

このような:

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 に答える