アプリ版:「スタンプのみでお礼する」機能のリリースについて

題のとおりなのですが、、

現在、あるSUBMITボタンを押すと、
"WINDOW1"という名前のwindowを立ち上げるものがあります。

別のSUBMITボタンを押すと、
"WINDOW1"をcloseする方法を知りたいです。

window.close()では、
WINDOW1ではなくSUBMITボタンがあるwindowが閉じてしまい
WINDOW1だけ むなしく残ってしまいます。

なさけない話、
window.WINDOW1.close とか
WINDOW1.close とか試してみたのですが・・・
全然違うようですね・・。。

どうすればいいのでしょうか?

A 回答 (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();
    • good
    • 1
この回答へのお礼

できました。ありがとうございます。
上記の方法 バッチリです。

今後ともよろしくお願いします。

お礼日時:2001/09/28 20:59

window.open() は、その返り値として、開いたウィドウを差すオブジェクトを


返します。それに対して、close() メソッドを発行すれば期待通りになるでしょう。

var win1;

/* 開くとき */
win1 = window.open(なんとかかんとか);

/* 閉じるとき */
win1.close();

この回答への補足

さっそくの回答ありがとうございます。

ウィンドウを開く際に、window.open ではなく
SUBMITボタンからonClickで関数を呼び出し
関数の中で
document.forms[0].target="WINDOW1";
としています。

この場合は この前にWin1と指定してあげればいいのでしょうか?
試しにやってみます。結果は後ほど・・・・

補足日時:2001/09/28 18:57
    • good
    • 0
この回答へのお礼

すいません、できませんでした。

開く方の記述
win1 = document.forms[0].target="WINDOW1";

閉じる方の記述
win1.close();

ではだめなのですね。。。
しくしく・・・・・。。

お礼日時:2001/09/28 19:39

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!