- 締切済み
Javascript
Javascript に関する質問です。 HTML にプルダウンメニューを設置し各ページに飛ばす際に、 別ウィンドウを開かせるようにするにはどうすればよいのでしょうか? 下記は Dreamweaver MX がはき出した Javascript です。 当方 Javascript に関してはほとんど素人です。どこに何を、どう書き換えてやればいいのか、どうか教えてください。 【Javascript】 <script language="JavaScript" type="text/JavaScript"> function MM_jumpMenu(targ,selObj,restore){ //v3.0 eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'"); if (restore) selObj.selectedIndex=0; } </script> 【HTML側】 <select onchange="MM_jumpMenu('parent',this,0)" name=menu1> <option selected>-- 選択して下さい --</option> <option value="../1.html">home1</option> <option value="../2.html">home2</option> <option value="../3.html">home3</option> <option value="../4.html">home4</option> </select>
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- beginner22
- ベストアンサー率50% (2/4)
こんにちわ。僕もjavascriptの初学者なので、参考になるかわかりませんが、これでどうでしょう。 html側のname = menu1を id = "menu1"に function MM_jumpMenu()は全部を書き換えました。 後は、”../1.html”の部分を飛ばしたいページのアドレスに入れかえればいいと思うのですが。 間違ってたらすみません。 【HTML側】 <select onchange="MM_jumpMenu()" id = "menu1"> <option selected>-- 選択して下さい --</option> <option value="../1.html">home1</option> <option value="../2.html">home2</option> <option value="../3.html">home3</option> <option value="../4.html">home4</option> </select> 【Javascript】 <script language="JavaScript" type="text/JavaScript"> function MM_jumpMenu(){ //v3.0 var select1 = document.getElementByName("select1"); var selectIndex = select1.selectedIndex; window.open(select1.options[selectIndex].value, 'newWindow', 'width=1000,height=1000'); }; </script>
- 神崎 渉瑠(@taloo)
- ベストアンサー率44% (1016/2280)
Dreamweaverを使う場合は、 ビヘイビアの「URLに移動」ではなく「ブラウザウィンドウを開く」を使って下さい。 ソースはDreamweaverが行いますから、ユーザーが変更する必要はありません。 (変更するとDreamweaverを使って変更出来なくなる可能性があります) もし自分でJavaScriptを書くのであれば、Dreamweaverが作成したスクリプトを全て削除し、open()を使って下さい。
- yambejp
- ベストアンサー率51% (3827/7415)
たとえばこんな感じ。 <script language="JavaScript" type="text/JavaScript"> function popup(selObj){ window.open(selObj.value,"","width=400,height=300"); } </script> <form> <select onchange="popup(this)" name=menu1> <option selected>-- 選択して下さい --</option> <option value="../1.html">home1</option> <option value="../2.html">home2</option> <option value="../3.html">home3</option> <option value="../4.html">home4</option> </select> </form> 質問者さんのやりたいことは「ポップアップ」といって、 結構きらわれているやり方なので、十分に気をつけて運用してください。
お礼
yambejpさんありがとうございます。 追加なのですが・・・ ポップアップではなく、target="_blank"のようにあらたにすることは不可能なのでしょうか? 誠に申し訳ありませんが宜しくお願いいたします。
お礼
talooさん ありがとうございます。 【Javascript】 <script language="JavaScript" type="text/JavaScript"> function MM_jumpMenu(targ,selObj,restore){ //v3.0 eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'"); if (restore) selObj.selectedIndex=0; } </script> 【HTML側】 <select onchange="MM_jumpMenu('parent',this,0)" name=menu1> <option selected>-- 選択して下さい --</option> <option value="../1.html">home1</option> <option value="../2.html">home2</option> <option value="../3.html">home3</option> <option value="../4.html">home4</option> </select> 上記のどの部分を変更すればよろしいのでしょうか? また、open()を使うにはどうするのでしょうか? 理由としては、リンク先がrefreshページでPDFにジャンプするようになっています。 _blankを使用しないと、戻ることができないので(2回戻るボタンを押す以外・・・) 誠に申し訳ございませんが、ご教授願います。