4つの選択肢の中から一つを選ばせて、その結果を集計して、結果によって違うページに飛ぶスクリプトを作っています。
その中で4つの選択肢をランダムに表示させる方法がわかりません。
Q1赤青緑黄,Q2赤青緑黄,Q3赤青緑黄… Q5赤青緑黄と現在なっていますが、
Q1緑黄赤青,Q2赤緑黄青,Q3青緑赤黄… Q5赤青緑黄という感じにしてもちゃんと集計してくれるようにしたいです。
以下のプログラムまでできています。アドバイスお願いします。
<title>好きな色</title>
<script type="text/javascript"><!--
function count(f){
var aka = 0;
var ao = 0;
var yellow = 0;
var midori = 0;
for(var i=1; i<=10; i++){
if(f["q" + i][0].checked && f["q" + i][0].value=="1"){
aka++;
}
else if(f["q" + i][0].checked && f["q" + i][0].value=="2"){
aka--;
}
else if(f["q" + i][1].checked && f["q" + i][1].value=="3"){
ao++;
}
else if(f["q" + i][1].checked && f["q" + i][1].value=="4"){
ao--;
}
else if(f["q" + i][2].checked && f["q" + i][2].value=="5"){
midori++;
}
else if(f["q" + i][2].checked && f["q" + i][2].value=="6"){
midori--;
}
else if(f["q" + i][3].checked && f["q" + i][3].value=="7"){
yellow++;
}
else if(f["q" + i][3].checked && f["q" + i][3].value=="8"){
yellow--;
}
}
if( aka > ao && aka > midori && aka > yellow){
location.href="01.html";
} else if( yellow > ao && yellow > midori && yellow > aka){
location.href="02.html";
} else if( ao > aka && ao > midori && ao > yellow){
location.href="03.html";
} else if( midori > ao && midori > aka && midori > yellow){
location.href="04.html";
} else {
location.href="05.html";
}
}
//-->
</script>
</head>
<body>
<center>
<form name="test">
<p>
<table border="1">
<tr>
<td>
Q1
</td>
<td>Yes</td>
<td>No</td></tr>
<br>
<td><label>赤</label></td>
<td><input type="radio" name="q1" value="1" /></td>
<td><input type="radio" name="q2" value="2" /></td></tr>
<td><label>青</label></td>
<td><input type="radio" name="q1" value="3" /></td>
<td><input type="radio" name="q2" value="4" /></td></tr>
<td><label>緑</label></td>
<td><input type="radio" name="q1" value="5"/></td>
<td><input type="radio" name="q2" value="6"/></td></tr>
<td><label>黄</label></td>
<td><input type="radio" name="q1" value="7"/></td>
<td><input type="radio" name="q2" value="8"/></td></tr>
</table>
<table border="1">
<tr>
<td>
Q2
</td>
<td>Yes</td>
<td>No</td></tr>
<br>
<td><label>赤</label></td>
<td><input type="radio" name="q3" value="1"/></td>
<td><input type="radio" name="q4" value="2"/></td></tr>
<td><label>青</label></td>
<td><input type="radio" name="q3" value="3" /></td>
<td><input type="radio" name="q4" value="4" /></td></tr>
<td><label>緑</label></td>
<td><input type="radio" name="q3" value="5"/></td>
<td><input type="radio" name="q4" value="6"/></td></tr>
<td><label>黄</label></td>
<td><input type="radio" name="q3" value="7"/></td>
<td><input type="radio" name="q4" value="8"/></td></tr>
</table>
<input type="button" value="採点" onclick="count(this.form)">
</form>
</center>
</body>
</html>
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
おは。
そのまえに、てーぶるのなりたちが、へんだじょ!<br>がへんなとこにあったり、
<tr>がないのに</tr>はあったりと・・・
</tr>をはぶくならみたことあるけど。
ばぶぅ~。
そうそう。
かいとうが、おなじいろで YesとNoでも いいんだよね! ばぶ。
No.2
- 回答日時:
もし、てーぶるが、こんなだったら。
<table border="1" id="TQ1" summary="問題1">
<tr>
<th>Q1</th>
<th>Yes</th>
<th>No</th>
</tr>
<tr>
<td><label>1赤</label></td>
<td><input type="radio" name="q1" value="1" /></td>
<td><input type="radio" name="q2" value="2" /></td>
</tr>
<td><label>2青</label></td>
<td><input type="radio" name="q1" value="3" /></td>
<td><input type="radio" name="q2" value="4" /></td>
</tr>
<tr>
<td><label>3緑</label></td>
<td><input type="radio" name="q1" value="5"/></td>
<td><input type="radio" name="q2" value="6"/></td>
</tr>
<tr>
<td><label>4黄</label></td>
<td><input type="radio" name="q1" value="7"/></td>
<td><input type="radio" name="q2" value="8"/></td>
</tr>
</table>
ならびかえるのは、
function test(id) {
var i = 0, o;
var tbody = document.getElementById(id).getElementsByTagName('tbody')[0];
while (o = tbody.childNodes[i]) if (3 == o.nodeType) tbody.removeChild(o); else i++;
while (--i) tbody.appendChild(tbody.childNodes[1+Math.random()*i|0]);
}
かもしれないじょ。
つかいかたは、
test('TQ1');
なかんじ。
ばぶぅ~
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
チェックボックス付きのテーブ...
-
history.backの前に値をクリア...
-
配列の使い方
-
jQueryでテーブル行の表示・非表示
-
画面表示とともにtableの指定の...
-
localStorageでのcheckbox制御
-
JavaScriptの「.querySelectorA...
-
入力チェックの外部スクリプト...
-
ボタンクリックでフォーカス移動
-
特定<table>内の<td>の色を変える
-
return trueとreturn falseの用...
-
プルダウン 項目が多いので先頭...
-
value内に変数を入れたい
-
ラジオボタンのチェックが外れ...
-
ラジオボタンにタブインデック...
-
確認ダイアログの出し方(JavaS...
-
プルダウンで選択すると、DBの...
-
<input>の選択肢をプルダウンメ...
-
submitした値を返したい
-
Visual Studioのデザインでの非...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
チェックボックス付きのテーブ...
-
JavaScriptの「.querySelectorA...
-
formで項目を連結したい
-
Formのシリアライズができない
-
画面表示とともにtableの指定の...
-
文字数を数える際に空白、改行...
-
クリックしたラジオボタンの行...
-
ラジオボタンを一括で操作する...
-
画面の2重起動をチェックする...
-
ラジオボタンとテキストボック...
-
Javascriptの電卓で最初の何も...
-
入力チェックの外部スクリプト...
-
JavaScriptによる自動計算フォーム
-
複数のselect値で1つも選択され...
-
javascriptで表(テーブル)の自...
-
jQueryで合計を出したい
-
localStorageでのcheckbox制御
-
JavaScriptで、コピーボタンを...
-
Javascriptで自動的に計算する...
-
WEBフォーム(asp)から画像デ...
おすすめ情報