入力した複数のテキストエリアの内容をサブウィンドウに表示する


動作ブラウザ 【 IE:4.0   NN:6.0
Internet Explorer Netscape Navigator Firefox Opera iCab Safari
3.0x 4.0x 4.5 5.0x 5.5 6.0 2.0x 3.0x 4.0x 4.x 6.0 7.0 8.0 1.x 7.x 8.x 2.x 1.x 2.x
Windows × - × × × × × -
Macintosh × - - × × × × × - ×
UNIX - - - - - - × × × × × - - - -

ポイント txt1 = txt1.replace(/\n/g,"<br>"); txt2 = txt2.replace(/\n/g,"<br>"); sbWin.document.write(txt1+"<br>"+txt2);
説  明 テキストエリアに入力された文字をサブウィンドウに表示するには、改行コードをbrタグに置換します。これは正規表現を使い、replace()メソッドを使って処理します。/\n/gとすることで文字列内の全ての改行コード(0x0d)が対象になります。replace()の2番目の引数(パラメータ)に置換する文字列を指定します。改行させるのでbrタグを指定します。テキストエリアが複数ある場合には、それぞれのテキストエリアの内容を読み出し置換処理を行います。サブウィンドウに出力する際に文字列として結合します。
サンプル <html> <head> <title>入力した複数のテキストエリアの内容をサブウィンドウに表示する</title> <script language="JavaScript"><!-- function dispSubWin(taObj1,taObj2) { txt1 = taObj1.value; txt2 = taObj2.value; txt1 = txt1.replace(/\n/g,"<br>"); txt2 = txt2.replace(/\n/g,"<br>"); sbWin = window.open("blank.html","checkWin","width=320,height=240"); sbWin.document.open(); sbWin.document.write(txt1+"<br>"+txt2); sbWin.document.close(); } // --></script> </head> <body> <form> <textarea rows="5" name="aTEXT"></textarea><br> <textarea rows="5" name="bTEXT"></textarea><br> <input type="button" value="サブウィンドウに表示" onClick="dispSubWin(this.form.aTEXT,this.form.bTEXT)"> </form> </body> </html>
補足説明 もし、\nでうまく動作しない場合はページの改行コードに合わせてみてください。(\rまたは\n\r)

■サンプルスクリプトを実行する >>実行
■各ブラウザでの動作結果を見る >>View!



写真素材 PIXTA