如何使用JavaScript编写测验?

如何使用JavaScript编写测验?,javascript,Javascript,我对JavaScript还是新手,我正在尝试编写一个测试,根据用户选择的答案将用户发送到3个页面中的一个页面(因此每次他们选择一个“x”答案,x将增加一个) 到目前为止,我写的代码有两个问题 变量值没有增加1,所以我可能写错了 我不知道如何选择答案检查最多的变量,将其发送到相关页面 我试着写一个if语句来说明我的意思。任何关于如何改进这一点的想法都将不胜感激,或者如果一个完整的其他方法会更好,我对此持开放态度 var x = 0; var y = 0; var z = 0; functio

我对JavaScript还是新手,我正在尝试编写一个测试,根据用户选择的答案将用户发送到3个页面中的一个页面(因此每次他们选择一个“x”答案,
x
将增加一个)

到目前为止,我写的代码有两个问题

  • 变量值没有增加1,所以我可能写错了

  • 我不知道如何选择答案检查最多的变量,将其发送到相关页面

我试着写一个
if
语句来说明我的意思。任何关于如何改进这一点的想法都将不胜感激,或者如果一个完整的其他方法会更好,我对此持开放态度

var x = 0;
var y = 0;
var z = 0;

function question1(){
    if (document.getElementById('a1').checked) {
        x++;        
    }
    else if (document.getElementById('a2').checked) {
        y++; 

    } else if(document.getElementById('a3').checked){
        z++;
    }
}
function question2(){
    if (document.getElementById('b1').checked) {
        x++;        
    }
    else if (document.getElementById('b2').checked) {
        y++; 

    } else if(document.getElementById('b3').checked){
        z++;
    }
}
function result(){
    Math.max(x,y,z);
    if (x){
       alert("You chose x");
    } else if (y){
        alert("You chose y");
      } else if (z){
          alert("You chose z");
        }

}

你在找这样的东西吗:

var totals = [0, 0, 0];
var letters = ["a", "b", "c"];

//Go through all answer letters
for (var i = 0, lt = letters.length; i < lt; i++)
{
    //Each question has 3 possible answers
    for (var j = 0; j < 3; j++)
    {
        if (document.getElementById(letters[i] + (j + 1)).checked)
        {
           //Increase the total that corresponds to the answer number
           totals[j]++;
           break;
        }
    }
}

totals.sort(function(a,b){return a-b});

var highest = totals.pop();
var总计=[0,0,0];
变量字母=[“a”、“b”、“c”];
//检查所有的回信
对于(变量i=0,lt=letters.length;i
您正在执行代码吗?例如
哦,很有趣。我有一个result()按钮,但我没有想到我需要对每个问题执行某种类型的操作。谢谢你的意见。哇,雷基,谢谢。我确保在提交按钮时执行问题功能,我现在可以让它做我想做的事情。再次感谢。