0

ユーザーが ASP ページのチェックボックスをクリックしたときに、Html テーブル (id='xx') を表示したいだけです。ユーザーがチェックボックスのチェックを外すと、テーブルは再び非表示になります。

<table>
    <tr>
         <td colspan='2'>
               <table id='xx'>
                      <tr>
                          <td colspan='2'>
                                Student Information :
                           </td>
                           </tr>
                           <tr>
                           <td>
                             <asp:Label ID="Label1" runat="server" Text="Select Student name :"></asp:Label>
                           </td>
                           <td>
                              <asp:DropDownList ID="DropDownList1" runat="server" Width="200px">
                                   </asp:DropDownList>
                           </td>
                       </tr>
    ...

私はこのコードを試しました:

   protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
    {

        if (CheckBox1.Checked == true)
        {
            // need a way to hide the Table id='xx' 
        }
        else {
            DropDownList1.Visible = true; // This is also not working
        }
    }

私を助けてください。

4

3 に答える 3

3

ポストバック中は、CheckBox コントロールにAutoPostBack="true"を使用します。

于 2012-05-20T07:33:37.933 に答える
1

これを試して...

<table>
    <tr>
        <td colspan='2'>
            <asp:CheckBox runat="server" ID="CheckBox1" Text="check" Checked="true" AutoPostBack="true"
                OnCheckedChanged="CheckBox1_CheckedChanged" />
            <table id='xx' runat="server">
                <tr>
                    <td colspan='2'>
                        Student Information :
                    </td>
                </tr>
                <tr>
                    <td>
                        <asp:Label ID="Label1" runat="server" Text="Select Student name :"></asp:Label>
                    </td>
                    <td>
                        <asp:DropDownList ID="DropDownList1" runat="server" Width="200px">
                        </asp:DropDownList>
                    </td>
                </tr>
            </table>
        </td>
    </tr>
</table>

protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
{
    this.xx.Visible = CheckBox1.Checked;
}
于 2012-05-20T07:29:21.287 に答える
1

ここには 2 つのオプションがあります...

  1. runat = "server" を使用してテーブル サーバー コントロールを作成します。
  2. CheckBox コントロールの Check/UnCheck で、表示属性を True/False に設定します。

オプション 1 サーバー側のハンドル

<table id='xx' runat = "server">

これで、以下のようにテーブル コントロールにアクセスできます

xx.Visible  = true/false;

オプション 2 クライアント側でのハンドル

<asp:CheckBox onclick="return SelectChk(this);" ID="chk" ></asp:CheckBox>

JavaScript 関数

<script language="javascript" type="text/javascript">
    function SelectChk(CtlId) {
        var IsChecked = document.getElementById(CtlId.id).checked;
        if (IsChecked) {
            document.getElementById(<%=xx.ClientID%>).style.display = 'block';
        }
        else{
            document.getElementById(<%=xx.ClientID%>).style.display = 'none';
        }
    }
</script>
于 2012-05-20T07:38:01.233 に答える