0

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

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 语句中放了什么,它只需要 else。

这只是我的 .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
4

1 回答 1

2

我无法正确假设您要做什么。

第一个问题

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

第二个问题

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

于 2013-05-30T17:02:59.163 回答