radioボタンで指定した内容を別ウンドウへ表示(1)
下記メールが、January 14, 2004 2:22 AM Tさんから来たので本サンプルを作成。
>ここに2つの参考サンプルを送ります。
>このサンプルは教科を選択するとフォームに教科書名が表示させて、
>「表示」をクリックすると別の窓で表示させた教科書名だけを表示させています。
>しかし、どうしても表示が「最後にチェックして表示した教科書名」しか表示されなくて
>ずっと悩んでいます。
>フォームごとに表示させるにはどうしたらいいでしょうか?
>よろしくお願いします
<返信>
私のHPを見て頂き有難う御座います。
送られ来たサンプルを見ると、新ウインドウを2回開いており、データの
受け渡しがうまくいっていません、これは多分、
「10−5.新ウインドウへデータを渡す」を参考に作成されたようですが、
10−5の例は100kb以上のデータがあり、そのデータを特に見えないように
してそのデータから抽出した内容のみ表示しようとした例です。
JavaScripの場合別ファイルのデータを使用が困難で、通常はウィンドウ上
に開いているデータしか制御できません。そのためには10-5の例のように
データのあるファイルを1度開いてデータの使用が終わったら閉じる等の
操作が必要です。(u1のエクスプローラ風リンク表についてもウインドウ上
にデータが必要ですが、こちらはフレーム幅1にして隠してあります)
なお、今回質問のデータは既に本HTMLファイルにあるので、特にややっこしい
ことは何もする必要がありません。単に新ウインドウを開き、radioボタンで
指定した内容を表示すればよい。(新ウインドウへ表示するhtmlファイルを
添付送付しますが、window.opener とすれば元のデータは読めます)
下記が新ウインドウで開くhtmlファイルです
<HTML>
<HEAD>
<meta http-equiv='Content-Type' content='text/html; charset=Shift_JIS'>
<TITLE>表示</TITLE>
<SCRIPT Language="JavaScript">
<!--
function engine() {
data1 = window.opener.document.post1.txt1.value;
data2 = window.opener.document.post2.txt2.value;
document.write("下記に***を表示します。")
document.write("<br><br>\n");
document.write(data1);
document.write("<br>\n");
document.write(data2);
document.write("<br><br><hr>\n");
document.write("<form>");
document.write("<INPUT onclick='window.close()' type=button value='閉じる'>");
document.write("</form>");
}
//-->
</SCRIPT>
</HEAD>
<BODY onload="engine()">
</BODY></HTML>
【HOME】
【実用編へ戻る】