- ベストアンサー
5問択2のラジオボタンは作れますか。
5問のうち2つ選択するラジオボタンを作る方法はあるのでしょうか。 JavaScript自体は意識して勉強したことがないのですが、 以下のような構文しか思いつきません。 <input type="radio" name="question1" value="1">いちご <input type="radio" name="question1" value="2">オレンジ <input type="radio" name="question1" value="3">桃 <input type="radio" name="question1" value="4">バナナ <input type="radio" name="question1" value="5">パナップル 出来る方法などご存知の方おられましたら幸いです。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
>以下のような構文しか思いつきません。 HTMLしか書いてないみたいだけど?? ラジオボタンのグループを個別にしてしまって、スクリプトで制御するようにしてしまえば可能だと思うけど、他の方がおっしゃっているように、ラジオボタンは1つ選択というのが常識的なので、ユーザーにとって意味不明のものになってしまいそう。 <html> <head> <script type="text/javascript"> var rd=[]; window.onload = function(){ var elm=document.getElementById('fm1').childNodes; for (var i=0,j=0; i<elm.length; i++){ if (elm[i].type=='radio'){ rd[elm[i].value-1] = false; elm[i].onclick=function(){check(this);} } } } function check(e){ var i = e.value-1; var t = 0; if (!rd[i]) { for (var j=0; j<rd.length; j++) t += rd[j]?1:0; if (t>1) {rd[i] = !rd[i]; alert("2個まで!");} } rd[i] = !rd[i]; e.checked = rd[i]; } </script> </head> <body> <form id="fm1"> <input type="radio" name="q1" value="1">いちご <input type="radio" name="q2" value="2">オレンジ <input type="radio" name="q3" value="3">桃 <input type="radio" name="q4" value="4">バナナ <input type="radio" name="q5" value="5">パナップル </form> </body> </html>
その他の回答 (4)
- abril
- ベストアンサー率69% (388/560)
「checkbox JavaScript 選択 制限」というキーワードでググると、1件目からお望みのサンプル・スクリプトがヒットしますよ。 その他にも同様のスクリプトがずらずら出てきますから、ご自分で理解しやすい・使いやすい(そのスクリプトが組み込みたい(X)HTMLの文書タイプ下・対象と想定するブラウザ上でも動くかどうか、という様なチェックをした上で)ものを参考にしてカスタマイズされると手軽でしょう。
お礼
ありがとうございました。 checkboxでいってみます。
- askaaska
- ベストアンサー率35% (1455/4149)
ラジオボタンじゃ無理ね。 もしやるのなら チェックボックスを使うしかないわ。 3つ目を選択した場合 ・警告を出して選択させない ・最初に選択したものを無効にする とかいろいろやり方はあると思うけど 一般的なのは前者で 「2つまで選択可能です。」とかなんとかメッセージをだすのよ。
お礼
ありがとうございました。 checkbox & 「2つまで選択可能です。」とかなんとかメッセージをだす、方法でやってみます。
ラジオボタンは択一で複数選択可の場合、 チェックボックスを利用することが殆どだと思います。 3つ目が選択されたら、 1つ目の選択解除するというロジックをJavaScript等で 組み込みます。
お礼
ありがとうございました。 チェックボックスを利用することにします。
- pentium100
- ベストアンサー率45% (689/1517)
ラジオボタンは選択肢のなかから一つだけ選ばせる際に使われるものだと認識しています。 一般のユーザーもそういう認識だと思いますが。 二つ選ばせたいなら同じラジオボタンをもう1セット用意するか チェックボックスに変更するかでしょうね。 (この場合3つ以上選べるのをどうにかしないとなりませんが) 1セットのラジオボタンで2つの選択肢を選べる方法があるのかわかりませんが、 たぶん操作する方が混乱すると思います。
お礼
ありがとうございました。 チェックボックスを利用することにします
お礼
ありがとうございました。 そもそも無理があったみたいですね。