WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:送られてきた値の改行を確認ページで反映させたい

0:[投稿] みらくるん [2005/11/20 16:05 ] [環境:IE6,WINXP Javaスクリプト]

<SCRIPT language="JavaScript">
<!--
function get() {
  str = location.search;
  str = str.substring(1,str.length);
  str = unescape(str);
  res = str.split("|");
  str="";
  for (i=0; i<res.length; i++){str+=res[i]+"\n"}
  document.myFORM.comment.value = str;
}
//-->
</SCRIPT>

という風にして、送られてきた値を"|"で分割し、改行を入れて物をメールフォームのテキストエリアに入れました。
ですが、内容確認の画面に行くと改行されてなく続いています。
改行を反映するにはどうすればいいのでしょうか?
恐れ入ります。どなたかご教授下さい。


1:[回答] 老衰 [2005/11/21 11:30 ]

<pre>

</pre>

または、

str.replace() を使う。\r\n|\r|\n を <br> に置換します。


2:[質問] みらくるん [2005/11/21 17:41 ]

現状の画面のテキストエリアでは
改行されて表示されてますが
次ページ(内容確認画面)で改行されないのです。

老衰さんからお教えいただいた物を下記のようにしてみました

function get() {
 str = location.search;
 str = str.substring(1,str.length);
 str = unescape(str);
 res = str.split("|");
 str="";
 for (i=0; i<res.length; i++){str+=res[i]+"\n"}
 newstr=str.replace(/(\r\n|\r|\n)+/g, "<br>")
 document.myFORM.comment.value = newstr;
}


と、したんですが、画面では
コメント<br>コメント<br>コメント

確認画面では
コメント&lt;br&gt;コメント&lt;br&gt;コメント
というようになりうまくできませんでした。

どうか教えてくださいませ。


3:[回答] AC1号 [2005/11/21 19:22 ]

これはテキストエリアの内容をサーバに送った後の話ですよね?「内容確認」の仕様がどうなっているかの話であって、JavaScriptは全く関係ないです。


4:[回答] na-mot [2009/10/09 09:14 ]

確認画面のdocument.writeを、
document.write('<pre>' + ??? + '</pre>');
に変えたらどうでしょう。

回答(必須): 状態:

お名前(必須):

URL:




[戻る]