変数が読み取れなかった場合に処理を変更する



0   名前: KEN : 2007/03/05(月) 23:27  ID:rYmiY77z sub-Cl
親ページのデータを取得する場合に親が閉じられてた場合に
対応したコードを書きたいのですが、どうすればいいでしょうか?

例えば、以下のコードでlengthを取得したいのですが、
親ページが消された場合はデータが取得できずJavascriptコードが実行できません。
この場合のページエラーを回避したいのです。

・(処理)


var len = opener.aryData.length;
・(処理)




try{}catch{}も使ってみたのですが、Javascript記述すべての処理が中断してしまいました。

・(処理)※手前のコードが実行されない


var len;
try{
len = opener.aryData.length;
}
catch{
len=0;
}
・(処理)



1   名前: 元帥 : 2007/03/05(月) 23:27  [URL]  ID:gpaI6XFV sub-bK
var len;
if(opener && opener.aryData){
  len=opener.aryData.length;
}else{
  len=0;
}

と、いうか、よく見たらtry構文が間違っているだけでは?
var len;
try{
  len=opener.aryData.length;
}catch(e){
  len=0;
}

2   名前: 元帥 : 2007/03/05(月) 23:27  [URL]  ID:gpaI6XFV sub-bK
※追記です。
JavaScriptを実行してエラーになったのなら、その旨が表示される筈ですので、よく読んで下さい。

IEの場合は、左下のアイコンをクリックして下さい。
書類の上に黄色の三角形が乗っかっており、中にはエクスクラメーションマークがあるアイコンです。

3   名前: KEN : 2007/03/05(月) 23:27  ID:Ee2fZCxI sub-Cl
ありがとうございました。

ご指摘のtry〜catch構文に記述ミスがありました。(^^)ゞ ぽりぽり

IEにそんな機能があったとは。 (^^)ゞ

ありがとうございました。



一覧へ戻る