3

私のコード:

* .aspx:

<asp:DropDownList ID="CountryList" CssClass="CountryList" runat="server" 
           OnSelectedIndexChanged="CountryList_SelectedIndexChanged" />

* .aspx.cs:

protected void Page_Load(object sender, EventArgs e)
{
   CountryList.SelectedIndexChanged += 
                          new EventHandler(CountryList_SelectedIndexChanged);
   ...  
}

protected void CountryList_SelectedIndexChanged(object sender, EventArgs e)
{
   LoadCityList(CountryList, CityList);
}

しかし、これは機能しません。

4

3 に答える 3

13

AutoPostBack="true"このドロップダウンリストで設定してみてください:

<asp:DropDownList 
    ID="CountryList" 
    CssClass="CountryList" 
    runat="server" 
    OnSelectedIndexChanged="CountryList_SelectedIndexChanged"
    AutoPostBack="true"  
/>

また、メソッドでイベント ハンドラーを手動で接続する必要もありませんPage_Load。これは、Web フォームをコンパイルするときに ASP.NET によって自動的に行われます。

protected void Page_Load(object sender, EventArgs e)
{
    ... 
}

protected void CountryList_SelectedIndexChanged(object sender, EventArgs e)
{
    LoadCityList(CountryList, CityList);
}
于 2011-04-26T08:42:35.433 に答える
1

aspx ファイルの AutoPostBack="true" プロパティを見逃したと思います

于 2011-04-26T08:44:21.880 に答える
1

ur aspx コードに AutoPostBack="true" を追加すると、すべてが思ったとおりに機能します。

于 2011-04-26T08:46:14.480 に答える