0

ラベルをクリックすると、そのすぐ下に、事前定義されたテキストが含まれるTextAreaが表示され、ユーザーはTextAreaのコンテンツを変更できなくなります。

これは私が試した方法です:

<html>

  <head>
    <script type="text/javascript">
    function myfunc2() {
      document.getElementById('showthis').style.visibility = "visible"
    }
    </script>
  </head>

  <body>
    <label onclick="myfunc2()">Click here</label>
    <textarea id="showthis" style="display:none">dfdsfsfasdfdsfsfasdfssdfsfasf</textarea>
  </body>

</html>

このhtmlとjavascriptに新しいiam..pls誰かがこれについて私を助けてくれます..

4

5 に答える 5

6

これを試して..

document.getElementById('showthis').style.display = "block";
document.getElementById('showthis').readOnly=true;

更新しました

クラス名を確認します(非表示)。はいの場合は、テキストエリアを表示して名前を付けshowます...それ以外の場合は、非表示にしてクラス名に次のように名前を付けます。hide

JAVASCRIPT

function myfunc2() {
 var selectedobj=document.getElementById('showthis');

  if(selectedobj.className=='hide'){  //check if classname is hide 
    selectedobj.style.display = "block";
    selectedobj.readOnly=true;
    selectedobj.className ='show';
  }else{
    selectedobj.style.display = "none";
    selectedobj.className ='hide';
 }
}

HTMLに非表示クラスを追加しますtextarea

HTML

 <textarea id="showthis" style="display:none" class="hide">dfdsfsfasdfdsfsfasdfssdfsfasf</textarea>​   // add a class hide
于 2012-11-28T11:05:08.837 に答える
2

を設定していますがvisibility:visible、要素には引き続きstyleプロパティがあるdisplay:noneため、表示されません。

プロパティを設定するのではなく、プロパティを。visibilityでオーバーライドする必要があります。displayblock

関数を次のように変更します。

function myfunc2() {
      document.getElementById('showthis').style.display = "block";
}
于 2012-11-28T11:05:30.447 に答える
0

displayプロパティではなくプロパティを変更したいvisibilityので、次の行を置き換えます。

document.getElementById('showthis').style.visibility="visible"

これのために:

document.getElementById('showthis').style.display="block"

作業デモを参照してください。

于 2012-11-28T11:05:01.807 に答える
0

CSS属性displayvisibilityは異なります。

visibility要素を単純に非表示にしたいが、レイアウト内で要素が占める場所を維持し、空白を残したい場合は、使用する方が理にかなっています。

<textarea id="showthis" style="visibility:hidden">dfdsfsfasdfdsfsfasdfssdfsfasf</textarea>

http://www.w3.org/wiki/CSS/Properties/visibility

一方、を使用displayすると、要素は非表示になりますが、レイアウトからも削除されます。

function myfunc2() {
    document.getElementById('showthis').style.display="block";
}

http://www.w3.org/wiki/CSS/Properties/display

于 2012-11-28T11:17:21.827 に答える
-2

あなたが行方不明

;

の上

document.getElementById('showthis').style.visibility="visible"

また、要素の可視性ではなく、display.styleを変更する必要があります

これを試してみてください

document.getElementById('showthis').style.display = "block";

または、textureareaにvisibility="false"属性を追加します

于 2012-11-28T11:05:22.853 に答える