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

アクセス制御のページを作っていまして、

1.メインページ(ウィンドウA)からそのページ(ページB)へのリンクボタンを押す
2.サブウィンドウ(ウィンドウC)が開き、IDを入力してninsyo.cgiへリンク
3.ninsyo.cgiで認証OKだったら、ウィンドウAにページBを表示

という様に動作させたいのですが、
3.のところでウィンドウAに表示させる方法がわかりません。ウィンドウBに表示されてしまうんです。
ninsyo.cgiは以下のようになっています。

open (HTML,"$html");
@html = <HTML>;
close (HTML);
print "Content-type: text/html\n";
print @html;
exit 0;

方法ありましたらご教示ください。よろしくお願いいたします。

A 回答 (3件)

ちょっと、言葉足らずでしたね。



以下のHTMLを試してみてください。(抜粋です。ちゃんとHTMLにしてくださいね)
上がindex.html、下がchild.htmlです。

上のリンクで、自分自身に名前をつけて、新しい窓にchild.htmlを表示しています。
で、その名前をchild.htmlのformでtarget属性に指定しているわけです。

この辺のヒントで大丈夫でしょうか?

あ、IEでのみ確認です。

------------
<A href="child.html" target="_blank" onClick="window.name='oya'">windowを開く</A>
------------
<form action="http://www.yahoo.co.jp/" target="oya">
<input type="submit" value="親にHTMLを・・・">
</form>
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
教えていただいた方法を参考に、目的のウィンドウに表示されるようにはなりました。
ただ今度はID認証に失敗してしまって。。。
試しに違うcgiにリンクさせたところそれは正常に動いたので、cgiの問題だと思いますが、さっきまでは同じcgiで違う方のウィンドウに表示されてたのになぜでしょうか。
今調べていますが、もし何かお心当たりがあれば教えていただけないでしょうか。
何度も申し訳ないんですが、よろしくお願いいたします。

お礼日時:2002/07/12 13:50

#2のお礼に対して。



「失敗する」の具体的なデータがないのでなんとも・・・

エラーログやHTMLのタイプミスとかはチェックなさいました?
    • good
    • 0
この回答へのお礼

よく分からないんですが、全部FTPのアップロードをし直したら(?)おかげさまで思っていたように動くようになりました。
本当にありがとうございました。
(Perlのカテゴリに質問してすみませんでした)

お礼日時:2002/07/12 14:16

ウインドウは3つ開くんですか?2つのような気が・・・



それはさておき、どの画面に出力するかはPerl側ではなく、ブラウザ側(HTML側)で制御します。

新しい画面を開くときにJavaScriptをご使用だと思うのですが、そのとき指定した名前を
<a>のtarget属性か<form>のtarget属性に指定してください。
このtarget属性自体もJavaScriptで動的に変更することも出来ます。

この回答への補足

ご回答ありがとうございます。

ウィンドウは2つです。
・・ウィンドウCに表示されてしまう・・の間違いでした。すみません。
上記の方法、さっそくやってみます。

補足日時:2002/07/12 11:07
    • good
    • 0
この回答へのお礼

上記の方法やってみたんですが、
target属性を指定するのは、ウィンドウAの
<a href="#" target="ninsyo" onclick="idwin_open('g')"…
のところでしょうか。
下記のJavaScriptでウィンドウCを開いていますが、
function idwin_open(win){
document.kakure.link.value=win;
window.open("id.html","id_ninsyo","");
}
id.htmlが表示された後すぐにウィンドウAのページが表示されてしまいます。

表示させたいページBにtarget属性を指定するとすれば、<a>や<form>は任意の場所でいいんでしょうか。
また教えてください、よろしくお願いいたします。

お礼日時:2002/07/12 11:48

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