• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:他のwindowをcloseしたい)

他のwindowをcloseしたい

このQ&Aのポイント
  • SUBMITボタンを押すと立ち上がる「WINDOW1」を閉じる方法を知りたい
  • window.close()ではSUBMITボタンがあるwindowが閉じてしまい、WINDOW1だけ残る
  • どうすれば「WINDOW1」を閉じることができるのか悩んでいる

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

  • ベストアンサー
  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.2

> この場合は この前にWin1と指定してあげればいいのでしょうか? いや、駄目ですよ。 私の書いた回答の win1 は、ただの変数名で何でもいいんです。 その win1 が何を指しているか、が重要なんです。新しく開いたウィンドウを 指しているのよ、ということをしているのが a-kuma> win1 = window.open(なんとかかんとか); のところなんです。 前に似たようなことをしたことがありますが、そのときはこんな小細工をしました。 var win1; /* SUBMIT ボタンの onClick で呼出される関数 */ function open_window() { /* 先にブランクのウィンドウを開いておく */ win1 = window.open("about:blank", "WINDOW1", サイズとかなんとか); ... document.form[0].target="WINDOW1"; document.form[0].submit(); } /* ウィンドウを閉じるとき */ win1.close();

noname#1802
質問者

お礼

できました。ありがとうございます。 上記の方法 バッチリです。 今後ともよろしくお願いします。

その他の回答 (1)

  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.1

window.open() は、その返り値として、開いたウィドウを差すオブジェクトを 返します。それに対して、close() メソッドを発行すれば期待通りになるでしょう。 var win1; /* 開くとき */ win1 = window.open(なんとかかんとか); /* 閉じるとき */ win1.close();

noname#1802
質問者

お礼

すいません、できませんでした。 開く方の記述 win1 = document.forms[0].target="WINDOW1"; 閉じる方の記述 win1.close(); ではだめなのですね。。。 しくしく・・・・・。。

noname#1802
質問者

補足

さっそくの回答ありがとうございます。 ウィンドウを開く際に、window.open ではなく SUBMITボタンからonClickで関数を呼び出し 関数の中で document.forms[0].target="WINDOW1"; としています。 この場合は この前にWin1と指定してあげればいいのでしょうか? 試しにやってみます。結果は後ほど・・・・

関連するQ&A

専門家に質問してみよう