Javascript没有检查是否选中了复选框

时间:2013-05-30 16:46:13

标签: javascript if-statement checkbox

我正在尝试构建一个包含多项选择题的测验,其中一个问题有多个正确的答案。因此,我正在尝试检查我的问题中的哪些复选框已被学生选中,以便提供正确的反馈。我的代码是:

for(var i = 0; i< input1.length; i++)
    {
        if(input1[0].checked && input1[1].checked)
        {
        submit_answer.onclick = showFeedback1; 
        }
        else
        {
        submit_answer.onclick = false1; 
        }
    }

即使我只选择那两个,它也永远不会是第一个。无论我在if语句中添加什么内容,它只需要其他内容。

这只是我的.js

的一部分
var quiz = document.getElementById('quiz');

var questions = quiz.getElementsByTagName('p');

input1 = questions[0].getElementsByTagName('input');

var submit_answer = document.getElementById('submit_answers'); // this is the submit button

1 个答案:

答案 0 :(得分:2)

我无法正确地假设你想要做什么。

第一个问题

你的for循环在1处递增,因此在每次下一次迭代时,它使用相同的先前使用的值进行比较。

第二个问题

你的结构非常糟糕,你的脚本会抓取每个p中的所有输入元素。您应该在组中正确组织元素,然后匹配它们是否被选中。