2016-09-30 7 views
1

は、私は、次のASP.NetコードがないんASP.Net DropDownListのSelectedIndexChangedイベントの火災が、何も

code.aspx:

<asp:UpdatePanel ID="upMain" runat="server"> 
    <ContentTemplate> 
     <table> 
      <tr> 
      <td>DropDownList One</td> 
      <td> 
       <asp:DropDownList ID="ddlOne" runat="server" AutoPostBack="true" 
        OnSelectedIndexChange="ddlOne_SelectedIndexChanged" /> 
      </td> 
      <td>DropDownList Two</td> 
      <td> 
       <asp:DropDownList ID="ddlTwo" runat="server" /> 
      </td> 
      </tr> 
     </table> 
    </ContentTemplate> 
</asp:UpdatePanel> 

code.aspx.cs:

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (!IsPostBack) 
    { 
     ddlTwo.Visible = false; 
    } 
} 

protected void ddlOne_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    ddlTwo.Visible = true; 
} 

私が期待するもの:

このコードでは、ddlOneの選択されたインデックスが変更されたときにddlTwoが表示されるはずです。あまりにddlOneのインデックスを変更する際に

ddlOne_SelectedIndexChanged機能の実行(デバッグとテスト)とddlTwo.Visible = true;実行されますが、私は、プロセスをステップとして、プロパティが変更されますが:実際に発生する処理

関数が終了し、私の結果(すなわち、可視のddlTwoコントロール)を見たいときは、結果はありません。

誰かが問題を発見できる場合は、教えてください。 ありがとうございました!

+0

スクリプトマネージャを使用しましたか? – Imad

+0

'upMain.Update()'を試してもらえますか?これは、Update PanelのUpdateModeが条件付きであることを前提としています。 –

+0

@ImadはいScriptManagerを使用しました –

答えて

1

変更するには、この行を

OnSelectedIndexChange="ddlOne_SelectedIndexChanged" 

、それが動作するはずです。

2

は、更新パネルの内側に

<Triggers> 
    <asp:AsyncPostBackTrigger ControlID="ddlOne" 
    EventName="SelectedIndexChanged" /> 
</Triggers> 

を試してみてください。

OnSelectedIndexChanged="ddlOne_SelectedIndexChanged" 

+0

私はこれを試みましたが、私はまだ同じ望ましくない結果を得ています。 –

関連する問題