JavaScriptで子画面の情報を取得する方法について



0   名前: kuma : 2007/07/23(月) 13:36  ID:BTMekXjU sub-kO
【何をしたいのか】
親画面のリンクをクリックすると新規ウィンドウが立ち上がります。
新規ウィンドウは固有の画面IDをhiddenで保持しています。
現在、親画面のリンクがクリックされた時に
立ち上がっている新規ウィンドウの画面IDを取得しようとしています。
どなたか取得する方法をご存知の方いらっしゃいませんでしょうか?
そもそもこんなことはできるのでしょうか?


【現在の状況】
親画面からリンクをクリックすると新規ウィンドウが立ち上がります。
リンクの表示数はユーザにより変わるのですが、
リンクから立ち上がった新規ウィンドウの数を10までに制御したいのです。

方法としては
1.起動しているウィンドウの画面IDを親画面のJavaScriptにて取得
2.全ての画面IDのリストと取得した画面IDを比較
3.合致したものがあればカウントアップ
4.カウントが10に達していたら警告ダイアログを表示
というのを想定しています。
しかし、現在1の段階で画面IDを取得できず、つまずいています。

【ソースの一部(新規ウィンドウ)】
<input type="hidden" name="screenID" value="AA0101X001">



【何をしてみたのか】
Googleにて親画面から子画面の情報を取得する方法を探してみたのですが、
目的を達成できそうな情報がありませんでした。
(子画面から親画面を操作するというのはあったのですが・・・)

【検索用語】
Javascript 親画面 子ウィンドウ 取得

1   名前: 匿名 : 2007/07/23(月) 13:36  ID:jSC9zi.K sub-y9
http://www.tagindex.com/javascript/window/main_to_sub1.html
この例のようにしていると思うので、win1を使って
var windowId = win1.document.getElementsByName['screenID'][0].value;
で取得できます。

実際にはwin1は配列でしょうから、こういう感じで。
var windowId;
for (var i = 0; i < win.length; i++) {
if (win[i] && !win[i].closed) {
windowId = win[i].document.getElementsByName('screenID')[0].value;
//2、3の処理
}
}

2   名前: kuma : 2007/07/23(月) 13:36  ID:BTMekXjU sub-kO
ご回答、ありがとうございます。
早速試させて頂きます。

一覧へ戻る