セレクトメニューを選んだら指定フレームに指定ページを表示する


動作ブラウザ 【 IE:4.0  NN:2.0
Internet Explorer Netscape Navigator DreamPassport iCab
3.0x 4.0x 4.5 5.0x 5.5 2.0x 3.0x 4.0x 4.x 6.0 2 3 2.x
Windows - - × -
Macintosh - - -
UNIX - - - - - - - -
Dreamcast - - - - - - - - - - × × -

ポイント n = selOBJ.selectedIndex; parent.contents.location.href = selOBJ.options[n].value; <frame src="code_blank.html" name="contents">
説  明 セレクトメニューで選択された番号はselectedIndexにより取得できます。取得した番号を元にして「document.セレクトオブジェクト名.options[選択番号].value」とすることでoptionタグのvalueの値を読み出すことができます。optionタグのvalueで、あらかじめジャンプ先のURLを指定しておけば、読み出した値をparent.フレーム名.location.hrefに代入することで指定フレーム名に選択されたページを表示することができます。
サンプル <html> <head> <title>セレクトメニューを選んだら指定フレームに指定ページを表示する</title> <frameset rows="40%,*"> <frame src="code_top.html"> <frame src="code_blank.html" name="contents"> </frameset> </head> </html>
補足説明

●フレーム分割ページ
<html>
<head>
<title>セレクトメニューを選んだら指定フレームに指定ページを表示する</title>
<frameset rows="40%,*">
<frame src="code_top.html">
<frame src="code_blank.html" name="contents">
</frameset>
</head>
</html>


●上側のページ
<html>
<head>
<title>セレクトメニューを選んだら指定フレームに指定ページを表示する</title>
<script Language="JavaScript"><!--
function popJump(selOBJ)
{
n = selOBJ.selectedIndex;
parent.contents.location.href = selOBJ.options[n].value;
}
// --></script>
</head>
<body>
<form>
<select onChange="popJump(this)">
<option value="#">選択して下さい
<option value="http://www.yahoo.co.jp/">Yahoo!
<option value="http://www.infoseek.co.jp/">Infoseek
<option value="http://www.lycos.co.jp/">Lycos
</select>
</form>
</body>
</html>


●下側のページ
<html>
<head>
<title>ページ</title>
<body>
メニューを選択してください。
</body>
</html>


■サンプルスクリプトを実行する >>実行
■各ブラウザでの動作結果を見る >>View!

写真素材 PIXTA