サブウィンドウに値を渡す


動作ブラウザ 【 IE:5.0  NN:2.0
Internet Explorer Netscape Navigator DreamPassport iCab
3.0x 4.0x 4.5 5.0x 5.5 2.0x 3.0x 4.0x 4.x 6.0 2 3 2.x
Windows × × - - -
Macintosh - - -
UNIX - - - - - - - -
Dreamcast - - - - - - - - - - -

ポイント window.open("sub.html?"+txt,"sw");
説  明 変数やフォームデータなどの値/文字列をサブウィンドウに渡すためにはいくつか方法があります。ここでは任意のURLのページをサブウィンドウで開き、そこに値/文字列を渡すようにするためにwindow.open()の一番最初の引数のURLに?を付加する事により実現しています。渡したいデータは?以降に記述します。サブウィンドウ側では?以降の文字を取り出す事で渡されたデータを得ることができます。
サンプル <html> <head> <title>サブウィンドウに値を渡す</title> <script language="JavaScript"><!-- function toSubWin() { txt = prompt("渡したい文字列を入れてください","sample"); window.open("sub.html?"+txt,"sw"); } // --></script> </head> <body> サブウィンドウに値を渡す<br> <form> <input type="button" value="値を渡す" onClick="toSubWin()"> </form> </body> </html>
補足説明 Windows版のInternet Explorer 4では動作しませんので注意が必要です。
サブウィンドウ側のスクリプトは以下の通りです。 <html> <head> <title>渡された値を表示する</title> </head> <body> 渡された値を表示する<br> <script language="JavaScript"><!-- str = location.search; str = str.substring(1,str.length); document.write(str); // --></script> </body> </html>

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

写真素材 PIXTA