-PR-
解決済み

ラジオボタンによるメニューの操作

  • 暇なときにでも
  • 質問No.97189
  • 閲覧数106
  • ありがとう数1
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 61% (37/60)

ラジオボタンクリック時に、メニューの内容を変化させたいのですが、どうすればいいのでしょうか?
javascriptでやればいいのか、HTMLでやればいいのかわかりません。

また、メニューに触れたときにラジオボタンを切り替えるにはどうすればいいのでしょうか?
よろしくお願いします。
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.1
レベル9

ベストアンサー率 45% (29/64)

これらの動作はJavaScriptを使用します。
まず、ラジオボタンをクリックしたときの動作ですが、
ラジオボタンにそれぞれ、関数を付けます。また関数には引数を当てておきます。
<INPUT TYPE="radio" NAME="radio" VALUE="radio1" onClick="ChangeMenu(1)">ラジオ1
<INPUT TYPE="radio" NAME="radio" VALUE="radio2" onClick="ChangeMenu(2)">ラジオ2




JavaScriptの方では関数を組みます。ここには変化させたいメニューの項目と、その値を書いておきます。これらの項目は元のメニューの数と同じでなければなりません。
function ChangeMenu(a){
with(document.form1){
if(a == 1){
OP.options[0].text="メニュー選択";
OP.options[1].text="ラジオ1-a";
OP.options[2].text="ラジオ1-b";
OP.options[0].value="";
OP.options[1].value="radio1-a";
OP.options[2].value="radio1-b";
}else if(a == 2){
OP.options[0].text="メニュー選択";
OP.options[1].text="ラジオ2-a";
OP.options[2].text="ラジオ2-b";
OP.options[0].value="";
OP.options[1].value="radio2-a";
OP.options[2].value="radio2-b";
}else{



}
}
}

これをいくつも組み合わせれば、どんどん変化する数は増えていきます。また、項目や値を配列に格納して、ループで呼び出してやるとソースが見やすくなります。

メニューに触れたときにラジオボタンを切り替える方法は
<OPTION onChange="ChangeRadio()" NAME="OP">
とし、メニューそれぞれの値を関数の引数とします。

function ChangeRadio(){
var value=document.form1.OP.selectedIndex;
value=document.orm1.OP.options[vakue].value;
if(value == "radio1-a"){
document.form1.radio[0].click();
}else if(value == "radio2-a"){
document.form1.radio[1].click();
}else{



}
}

こんな感じです。
お礼コメント
tomo5

お礼率 61% (37/60)

迅速で詳しい回答、ありがとうございます。
メニューに触れたときラジオボタンを操作するのは、
これでできそうです。

ラジオボタンクリック時のほうについては、
こちらのたずね方が悪かった為、誤解を招いてしまったようです。

ラジオボタンクリック時、メニューの『現在表示されている内容』を
他の値にかえるだけでいいです。

たとえば、
項目が
<OPTION VALUE="">24
<OPTION VALUE="">25
<OPTION VALUE="">26
<OPTION VALUE="">27
<OPTION VALUE="">28
<OPTION VALUE="">29
<OPTION VALUE="">30
とあり、現在28が選択されていて、ラジオボタンを押したら
24が表示される(初期選択に戻る)、
というようにしたいです。

それでも、メニューに触れたときのやつは
大変助かりました。
本当にありがとうございました。
投稿日時 - 2001-06-29 11:55:22
-PR-
-PR-
このQ&Aで解決しましたか?
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

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

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

特集


専門家があなたの悩みに回答!

-PR-

ピックアップ

-PR-
ページ先頭へ