- ベストアンサー
FirefoxでselectedIndexが使えない
- FirefoxでselectedIndex属性に値を入れることができません。IEですと問題なく動きます。
- 子画面から親画面のプルダウンメニューの値を変更させる方法として、親画面からポップアップ画面(子画面)を表示し、子画面のボタンをクリックすると親画面のプルダウンメニューの値が変更されます。
- Firefoxのバージョン2.0.0.1では、window.opener.document.getElementById( "a" ).selectedIndex = 1;というコードを使用してもselectedIndex属性に値を入れることができません。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
まったく問題なく作動しますが・・・ hoge.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>てすと</title> <script type="text/javascript"> <!-- application/ecmascript--> function hoge(){ var url = "huga.html"; var subwin = window.open( url, "", "width=500,height=500,scrollbars=yes", "_blank" ); subwin.focus(); } </script> </head> <body> <select id="a"> <option>あ</option> <option>い</option> <option>う</option> <option>え</option> </select> <button onclick="hoge();">実行</button> </body> </html> huga.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>てすと</title> <script type="text/javascript"> <!-- application/ecmascript--> function huga(){ window.opener.document.getElementById("a").selectedIndex = 1; } </script> </head> <body> <button onclick="huga();">実行</button> </body> </html>
その他の回答 (1)
- himajin100000
- ベストアンサー率54% (1660/3060)
#1です。strict.dtdを宣言しながら、select要素等がbody直下にあって W3C Markup Validatorに怒られて来たので適宜対処してください #Form系のソースあまり書いたことないんだよなあ
お礼
プルダウンメニューの「name」には名前がつけてあったのですが、「id」に名前をつけていなかったようでした。 (※<select id="a">ではなく、<select name="a">となっていた) 「id」に名前をつけることでFirefoxでも正常に動くようになりました。 初歩的なミスで申し訳ありませんでした。 またお力添えを頂き、まことにありがとうございました。