14

javascript を使用して、ラベルとテキスト ボックスを持つ div 要素の表示を切り替えようとしています。ここにコードスニペットがあります

<table id="authenticationSetting" style="display: none">
<div id="authenticationOuterIdentityBlock" style="display: none;">
                <tr>

                    <td class="orionSummaryHeader"><orion:message key="policy.wifi.enterprise.authentication.outeridentitity"/>: </td>
                    <td class="orionSummaryColumn">
                        <orion:textbox id="authenticationOuterIdentity" size="30"/>
                    </td>

                </tr>
                </div>

            </table>

ただし、ページの読み込み時に div 要素は引き続き表示されますが、table 要素の表示切り替えは正常に機能しています。これが機能しない理由がわかりません。テーブル要素のスタイルが div 要素のスタイルをオーバーライドしている可能性があります。PS div 内の要素を非表示にすることはできますが、div 自体を非表示にすることはできません。

4

2 に答える 2

21

単に変更<div>する<tbody>

<table id="authenticationSetting" style="display: none">
  <tbody id="authenticationOuterIdentityBlock" style="display: none;">
    <tr>
      <td class="orionSummaryHeader">
        <orion:message key="policy.wifi.enterprise.authentication.outeridentitity" />:</td>
      <td class="orionSummaryColumn">
        <orion:textbox id="authenticationOuterIdentity" size="30" />
      </td>
    </tr>
  </tbody>
</table>
于 2013-07-04T03:38:51.150 に答える
5

意味的に、あなたがしようとしているのは無効なhtmlです。要素は要素を直接の子としてtable持つことはできません。divあなたができることは、要素をdiv要素の中に入れて、tdそれを隠そうとすることです

于 2013-07-04T03:34:43.350 に答える