OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

FORMのSELECTのOPTION項目をサブウインドウから追加できない

  • すぐに回答を!
  • 質問No.246744
  • 閲覧数141
  • ありがとう数1
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 51% (16/31)

下記の2つのファイル(error.htm,_sub.htm)を作成し、error.htm をIEで表示すると、IEからは、”サーバーが例外を返しました”とのエラーが発生し、最悪の場合、IEが落ちます。
このようなエラーについて、何か情報をお持ちの方がおられましたら、教えてください。
確認済環境:
Windows2000Server + IE6.0
Windows2000Professional + IE5.0
WindowsNTServer 4.0 + IE6.0
Windows98 + IE5.5
以上、よろしくお願いいたします。

---(error.htm)---
<HTML><HEAD></HEAD>
<BODY onLoad="window.open('_sub.htm')">
<form name="testForm">
<select name="sel1">
<option selected>A</option>
<option>B</option>
<option>C</option>
</select>
'D' should be added by JavaScript in the '_sub.htm'.<br>
However, the error ocurred and it was not performed!
</form>
</BODY></HTML>

---(_sub.htm)---
<HTML><HEAD></HEAD>
<BODY onLoad="AddOption()">
Test Sub Window
</BODY></HTML>
<SCRIPT>
function AddOption(){
sel = opener.document.testForm.sel1;
sel.options[sel.options.length] = new Option("D", "V");
}
</SCRIPT>
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.1
レベル12

ベストアンサー率 56% (413/735)

確か、セキュリティの問題だったか何かで、外部から直接オブジェクトを変更するような操作はできなかったのではないかと思います。
ですので、対応方法としては、error.htmに自分のOptionオブジェクトに新たに値を追加する関数を作り、_sub.htmはその関数を呼ぶようにすれば対応できると思います。
そういう方法ではだめでしょうか?

以下、こんな感じで行けると思う例です。

----error.htm----
<HTML><HEAD></HEAD>
<SCRIPT>
function addOption(text,value){
sel = this.document.testForm.sel1;
sel.options[sel.options.length] = new Option(text,value);
}
</SCRIPT>
<BODY onLoad="window.open('_sub.htm')">
<form name="testForm">
<select name="sel1">
<option selected>A</option>
<option>B</option>
<option>C</option>
</select>
'D' should be added by JavaScript in the '_sub.htm'.<br>
However, the error ocurred and it was not performed!
</form>
</BODY></HTML>

----_sub.htm----
<HTML>
<HEAD></HEAD>
<SCRIPT>
function AddOption(){
opener.addOption("D","V");
}
</SCRIPT>
<BODY onLoad="AddOption()">
Test Sub Window
</BODY></HTML>
補足コメント
isobeman

お礼率 51% (16/31)

ご回答ありがとうございました。
おかげさまで、無事動作させることができました。

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

(「御礼を言う」で入れた文章は、どこに行ってしまうの?)
投稿日時 - 2002-04-04 16:28:54
お礼コメント
isobeman

お礼率 51% (16/31)

と思ったのですが、お礼がしっかりといえていなかったようです。
(というか、確認画面でできたと思っていた。)

ありがとうございました。
おかげで、無事無事動作させることができました。
また、子ウインドウで親ウインドウのフォーム内容を、typeとnameによって、すべて書き込むようなものを作成していたため、以下のようにして使用しました。これも大丈夫でした。
ありがとうございました。

---(親ウインドウ)---
function addOption(sel,text,value){
sel.options[sel.options.length] = new Option(text,value);
}

---(子ウインドウ)---
function AddOption(){
opener.addOption(opener.testForm.sel1,"D","V");
}
投稿日時 - 2002-04-04 16:34:40
-PR-
-PR-
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ