前回プルダウンメニューによる左右フレーム切り替えの質問をさせていただきました。
→http://oshiete1.goo.ne.jp/kotaeru.php3?q=1200405
申し訳ないですが、ここからまた新たに質問させてください。
上部(固定)、左フレーム(プルダウン設置)、右フレーム(メインページ)というページを作っています。
現在の状況はローカルのフォルダの中に
○上フレーム:flame1.htm(完成)
○左フレーム:flame2.htm(←ここに設置したい)
○右メインページ:1.htm 2.htm 3.htm(←1つ目プルダウン)4.htm 5.htm 6.htm(←2つ目のプルダウン) 7.htm 8.htm 9.htm(←3つ目のプルダウン)
と入っている感じです。
<HEAD>~<HEAD>部分
<script language="JavaScript"><!--
function myGo(){
mySelect = document.myForm.myMenu.selectedIndex;
parent.main.location.href = document.myForm.myMenu.options[mySelect].value;
}
// --></script>
<BODY>~<BODY>部分
<form name="myForm">
<select name="myMenu" onChange="myGo()">
<option value="1.htm" >第1章
<option value="2.htm" >第2章
<option value="3.htm" >第3章
</select>
</form>
↑上記でひとつのプルダウンは設置できるのですが、
2つ目、3つ目のプルダウンの設置となると、
どこをどうしたらよいやらわかりません。
是非ご回答よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
myGoの中で見るプルダウンが、myMenuに限定されているからでしょう。
プルダウンは3つ作ったとしても、それを選択して呼ばれる処理は
まったく同じなので、プルダウン自身を関数に渡すのがいいでしょう。
----------
<html>
<head>
<script kanguage=Javascript">
<!--
function myGo(myPullDown) {
var mySelect = myPullDown.selectedIndex;
parent.main.location.href = myPullDown.options[mySelect].value;
}
//-->
</script>
<body>
<form name="myForm">
<select name="myMenu1" onChange="myGo(this)">
<option value="1.htm">第1章
<option value="2.htm">第2章
<option value="3.htm">第3章
</select>
<br>
<select name="myMenu2" onChange="myGo(this)">
<option value="4.htm">第4章
<option value="5.htm">第5章
<option value="6.htm">第6章
</select>
<br>
<select name="myMenu3" onChange="myGo(this)">
<option value="7.htm">第7章
<option value="8.htm">第8章
<option value="9.htm">第9章
</select>
</form>
</body>
</html>
----------
ちがうところは、プルダウン側のonChangeで関数を呼ぶときに
this(プルダウン自身を指す)を引数として渡していることと、
関数myGo側で、document.myForm.myMenuに対してやっていた処理を
引数で渡したプルダウンに対してやっていることです。
(プルダウンのname属性も変えましたが…)
こうしておけば、プルダウンをいくつ増やしても対応できます。
早速の回答ありがとうございます。
完璧です…感謝感激です。
しかしプルダウンの幅というのは、
文字数によって、変わってしまうのですね。
これをあわせることができますか?
新規で質問した方が良さそうですね^^;
今回は大変お世話になり感謝しています。
No.1
- 回答日時:
こんにちは。
フレーム分割自体余りお勧めできませんが・・・。
こちらのフレーム編、
参考にしてみてください。
関数受け渡しは
parent・フレーム名・関数名
の様にフレーム名が必要になります。
参考URL:http://www.openspc2.org/reibun/javascript/#10
早速の回答ありがとうございました。
参考のリンク大変参考になりました。
私自身まだまだフレームについて大変未熟な部分が
わかりました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript JavascriptからSQLへ繋ぎ方が分からない 3 2022/07/07 00:27
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- JavaScript セレクトボックスを2つ選択してメッセージなどを表示するには。~運賃検索プログラムを完成させたい~ 1 2022/07/22 11:10
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript セレクトを全て選択されていないと、文字によるエラーメッセージを表示させるコードを調べています 2 2023/06/22 15:48
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
- JavaScript console.logがどうしても2つ機能しないのでアドバイスをくださいお願いします 2 2022/07/07 22:13
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
HTMLのoptionタグ部分に画像を...
-
HPビルダー9で、プルダウン形...
-
プルダウンを2つ以上並べる時に...
-
リストボックス全選択について
-
submitをボタン以外にするには
-
URL パラメータを使ってフォー...
-
複数のフォームを一括で送信す...
-
フォーム送信後、ウィンドウを...
-
</form>タグを使用すると強制的...
-
form actionでmailtoを指定する...
-
親ページからインラインフレー...
-
Json のキーと値の出力の違いに...
-
javasqliptで複数のテキストボ...
-
動的にnema属性が変化する場合...
-
GETをPOSTに変更したところ 送...
-
フォームの送信ボタンの位置
-
1アクションでPOST・GET、両方...
-
一括で値を入力するには?
-
テーブル内の送信ボタンのある...
-
1つのformで複数のactionを実...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
HTMLのoptionタグ部分に画像を...
-
プルダウンメニュー項目のフォ...
-
セレクトボックスの値による入...
-
セレクトボックスの幅をプルダ...
-
複数のプルダウンからリンクす...
-
<SELECT>タグでの selected 状...
-
プルダウンメニューでインライ...
-
クリックすると下に項目が出て...
-
前ページのリンクからフォーム...
-
セレクトボックスを切り替える...
-
プルダウンメニューアイテムの...
-
VB6.0でコントロール配列の配列...
-
jQuery if文の条件分岐 (。ノд...
-
リストボックス全選択について
-
プルダウンメニューで、選択項...
-
プルダウンの切り替えについて
-
switch文のswitch(n)の部分を複...
-
プルダウンを2つ以上並べる時に...
-
複数のプルダウンの値をパラメ...
-
jQuery要素の絞り込み + <selec...
おすすめ情報