• ベストアンサー

textareaで入力した文字を改行したままで表示したいのですが。

textareaに複数行で入力した文字を改行したままで表示したいのですが 改行されずに表示されます。 改行したままで表示するのはどうすればいいでしょうか? <HTML> <HEAD> <STYLE type="text/css"> <!-- INPUT {font-size: 12px;} --> </STYLE> <SCRIPT language="JavaScript"> <!-- function check(){ var strName; strName = document.nform.textN.value; var test = document.getElementById("test"); test.innerHTML = strName; } //--> </SCRIPT> </HEAD> <BODY> <FORM name="nform" > <textarea cols="30" rows="10" name="textN"></textarea> <input type="button" value=" 確認 " onClick="check()"> </FORM> <DIV id="test" style="position:absolute;font-size:24px;"> </DIV> </BODY> </HTML>

質問者が選んだベストアンサー

  • ベストアンサー
  • suzuki-_-
  • ベストアンサー率77% (152/195)
回答No.2

function check(){ var strName; strName = document.nform.textN.value; var test = document.getElementById("test"); //一応タグを使えないように置き換える strName = strName.split("<").join("&lt;"); strName = strName.split(">").join("&gt;"); //改行を改行タグに置き換える strName = strName.split("\n").join("<br>"); test.innerHTML = strName; }

noname#52471
質問者

お礼

回答ありがとうございます。 split、joinは初めて見ました。 \nを<br>に置き換えるのですね。 ちなみにreplaceでもできるのかと思って試しましたが、 1行目しかしてくれないのでwhileとか組み合わせればできそうですが、こちらの方が簡潔でわかりやすいですね。 ありがとうございました。

その他の回答 (2)

回答No.3

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <style type="text/css"> input { font-size: 12px; } #test{ position:absolute; font-size:24px; white-space:pre; } </style> <script type="text/javascript"> function check(){ var strName; strName = document.getElementById("textN").value; var test = document.getElementById("test"); if (test.textContent){ test.textContent = strName; } else{ test.innerText = strName; } } </script> </head> <body> <!-- form要素を用いると,action属性やmethod属性を指定しなければならなくなるため削除--> <p><textarea cols="30" rows="10" id="textN"></textarea></p> <p><input type="button" value=" 確認 " onclick="check()" /></p> <p id="test" > </p> </body> </html>

noname#52471
質問者

お礼

回答ありがとうございます。 試したところうまくいきました。ありがとうございます。 今回は、No2さんの方を利用させて頂きます。 ありがとうございました。

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

<DIV id="test" style="position:absolute;font-size:24px;"> </DIV> を <PRE id="test" style="position:absolute;font-size:24px;"> </PRE> にしてみてはどうでしょうか?

noname#52471
質問者

お礼

早速回答ありがとうございます。 ですが、変化なしです。ちなみにIE7です。

関連するQ&A