在操作单选按钮值时使用switch-case

时间:2014-07-17 04:17:38

标签: jquery

我有这个代码获取所选单选按钮的值,并且应该使用switch-case计算它们,然后找出哪个具有最高值。但是我被卡在switch语句中,因为每当值进入它内部时,它就变成NaN或未定义。我曾尝试使用parseInt,但是,只要它进入switch-case,它就会破坏我的价值。

这是JS:

$('#submit').click(function() {  
    var choice1, choice2, choice3, choice4, choice5, choice6;

    if (($("input[name='qa1']:checked").length == "0")){
        alert("ANSWER ALL QUESTIONS!");
    }

    else{
        var answer1 = parseInt($("input[name='qa1']:checked").val());

        switch(answer1){
            case 1: choice1++; 
                    break;
            case 2: choice2++;
                    break;
        }
        alert(choice1);
//Closing braces

示例HTML:

<div class="a_choice" id="a1" >
        <img src="img/q1-1.jpg" class="a_image" alt=" "/>
        <input type="radio" class="button" id="btn1" name="qa1" value="1">
        <label for="btn1"></label>
    </div>
<div class="a_choice" id="a2" >
        <img src="img/q1-2.jpg" class="a_image" alt=" "/>
        <input type="radio" class="button" id="btn2" name="qa1" value="2">
        <label for="btn2"></label>
    </div>
<input type="button" id="submit" name="submit" value="View Result" />

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

这是因为您必须分配以下值:

var choice1=0, choice2=0, choice3=0, choice4=0, choice5=0, choice6=0;

你没有为变量赋值,但是增加它们就是为什么他们会向你展示NAN

DEMO