3 つ数字を入力し、[判定]を押すと、3つの数字のうち同じ数字がいくつあるかを表示する HTML を作っているのですがほぼ完成しているのですが2パターンだけうまく表示されませんでした。3つとも同じ場合もうまくいかずどこが間違っているのかわかりません教えてください。さらに上2つのボックスだけの時と3つ別の時もうまくいきませんでした。
html
1 <script> 2 function judge() { 3 var x, y, z; 4 var res=document.getElementById("result"); 5 x=window.document.myform.s.value-0; 6 y=window.document.myform.t.value-0; 7 z=window.document.myform.t.value-0; 8 9if (x==y==z) { 10 res.innerHTML="3つとも同じです"; 11}else if ((x==y)&&!(x==z)&&!(y==z)) { 12 res.innerHTML="同じ数字の数は2つです"; 13}else if ((y==z)&&!(x==y)&&!(x==z)) { 14 res.innerHTML="同じ数字の数は2つです"; 15}else if ((z==x)&&!(x==y)&&!(x==y)) { 16 res.innerHTML="同じ数字の数は2つです"; 17}else{ 18 res.innerHTML="同じ数字は1つもありません"; 19} 20 } 21 </script> 22 </head> 23 <body> 24 <p>3つの数字のうち同じ数字の数を調べる</p> 25 <p> 26 <form name="myform"> 27 数字1:<input type="text" name="s"><br> 28 数字2: <input type="text" name="t"><br> 29 数字3:<input type="text" name="u"><br> 30 <br> 31 <input type="button" value="判定" onclick="judge()"> 32 </form> 33 </p> 34 <div id="result">ここに結果が出力されます</div> 35 </body></html>
追記 x==y==zができると思っていました。このサイトを使ったの今日が初めてなのでよくわかりませんすいません。
回答2件
あなたの回答
tips
プレビュー