0

ASP.NET で Web サイトを作成していて、問題が発生しました。別のドロップダウン リストで新しいオプションが選択されたときに、ウェブサイトで 1 つのドロップダウン リストにオプションを追加したい。これを行うために、2 番目のドロップダウン リストの SelectedIndexChanged イベントを使用しています。この行をこのイベントに追加してコードをテストすると、次のようになります。

DropDownSubject.Items.Add("TEST");

最初のドロップダウン リストには何も起こりません。このドロップダウン リストには、エディターで自動的に「Unbound」という単語が書き込まれているためですか? この問題を解決するにはどうすればよいですか?

項目を追加する最初のドロップダウン リストのマークアップを次に示します。

<asp:DropDownList ID="DropDownClasses" runat="server" 
                >

そして2番目は、私がイベントを使用しています:

<asp:DropDownList ID="DropDownSubject" runat="server" 
                onselectedindexchanged="DropDownSubject_SelectedIndexChanged">
                <asp:ListItem>Mathematics</asp:ListItem>
                <asp:ListItem>Foreign Language</asp:ListItem>
                <asp:ListItem>Science</asp:ListItem>
                <asp:ListItem>Social Studies</asp:ListItem>
                <asp:ListItem>English</asp:ListItem>
            </asp:DropDownList>

すべてのヘルプは大歓迎です。

4

1 に答える 1

1

詳細:最初のドロップダウン リストに AutoPostBack が設定されていないようです。以下の例

  <asp:DropDownList ID="DropDownList1" runat="server" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged" 
    AutoPostBack="true">
        <asp:ListItem>Cat</asp:ListItem>
        <asp:ListItem>Dog</asp:ListItem>
  </asp:DropDownList>

<asp:DropDownList ID="DropDownList2" runat="server"></asp:DropDownList>


コードビハインド

protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
    DropDownList2.Items.Add(DropDownList1.SelectedItem.Text);
}
于 2012-11-20T03:57:33.083 に答える