2012-02-07 22 views
0

私のウェブページにはとpanelsが2つあります。ラジオボタン1が変更されたときにパネル1を表示し、ラジオボタン2をチェックしたときに同様のパネル2を表示する必要があります。パネル1。ラジオボタンを使用してパネルを表示/非表示

これは私がここには成功

で行っている方法ですが、私のラジオボタンです:

<asp:RadioButton ID="RadioButton1" runat="server" Text="Text" ForeColor="White" GroupName="selection" OnCheckedChanged="RadioButton1_CheckedChanged"/> 

<asp:RadioButton ID="RadioButton2" runat="server" Text="Image" ForeColor="White" GroupName="selection" OnCheckedChanged="RadioButton2_CheckedChanged"/> 

これはRadioButton1_CheckedChangedさ:

If RadioButton1.Checked = True Then 
      RadioButton2.Checked = False 
      Panel1.Visible = True 
      Panel2.Visible = False 
End If 

これはRadioButton2_CheckedChangedさ:

If RadioButton2.Checked = True Then 
      RadioButton1.Checked = False 
      Panel1.Visible = False 
      Panel2.Visible = True 
End If 
+0

これを有効にするには、自動ポストバックをtrueに設定する必要があります。 – JonH

答えて

2

ラジオボタンの場合は、autopostbackをtrueに設定する必要があります。 AutoPostback="True"あなたのラジオボタンのタグにそれを含めて、あなたは行かなくてはなりません。コードの単純なデバッグでは、両方のイベントが現在のコードで呼び出されていないことがわかります。

+0

@ John - 返信いただきありがとうございます。また、パネルで更新パネルを使用し、ラジオボタンのポストバックプロパティをtrueに設定して、ポストバックしたくない場合もあります。 – coder

+0

@DotNetter - ポストバックをしたくないのであれば、なぜサーバー側ではなくクライアント側でこれを処理しないのですか? 'getElementById'や' getElementByName'にシンプルなjavascriptを使い、visibilityプロパティを設定します。さらに、サーバー側のコードでこれを行うには、既存のコードに基づいて特別な/特定の目的がありません(データを処理していないか、データ集約的な作業を行っていません)。 – JonH

+1

ええ、ガードポイント。私はそれを行います。 – coder

関連する問題