gpt4 book ai didi

javascript - 如何选择二维数组表示的所有复选框?

转载 作者:行者123 更新时间:2023-11-30 13:33:07 24 4
gpt4 key购买 nike


我有一个问题 div,看起来像这样:

<div  class="Q">
<div id="Q1"><span>1. </span>Which of the following have the same meaning?</div>
<div class="A"><input type="checkbox" id="Q1A1Correct" /><input type="checkbox" id="Q1A1User" class="UserA"/><span id="Q1A1Text">String</span></div>
<div class="A"><input type="checkbox" id="Q1A2Correct" /><input type="checkbox" id="Q1A2User" class="UserA"/><span id="Q1A2Text">string</span></div>
<div class="A"><input type="checkbox" id="Q1A3Correct" /><input type="checkbox" id="Q1A3User" class="UserA"/><span id="Q1A3Text">Integer</span></div>
<div class="A"><input type="checkbox" id="Q1A4Correct" /><input type="checkbox" id="Q1A4User" class="UserA"/><span id="Q1A4Text">int</span></div>
</div>

我还有一个二维数组,它表示每个问题的类型及其正确答案,例如

var correctAnswers=[["multipleAnswer","1","2"],["multipleAnswer","2","3"]];  

表示问题 1 和 2(数组中的前两个元素)是多选题(假设这是唯一的一种),它们的正确答案是第 1 题的 1 和 2,以及第 2 题的 2 和 3。
现在我需要检查每个复选框是正确答案(即问题 1 - Q1A1CorrectQ1A2Correct)。
我设法针对一个特定问题做到了这一点:

    var correctAs={};
correctAs.Q1 = ["checkbox","1","2"];

$('#checkAs').click(function(){
$.each(correctAs.Q1,function()
{
$("#Q1A"+this+"Correct").attr('checked', true);
}); //mark correct As according to array above

});

但我无法概括我的代码,使其适用于二维数组。

所以我的问题是 - 如何检查给定数组的所有问题的所有正确答案? (如果有帮助,可以选择更改数组的构建方式)

谢谢你的时间

最佳答案

var correctAnswers = [["multipleAnswer","1","2"], ["multipleAnswer","2","3"]];

$('#checkAs').click(function(e) {
for (var i = 0, len = correctAnswers.length; i < len; i++) {
for (var j = 0, ln = correctAnswers[i].length; j < ln; j++) {
if (!isNaN(Number(correctAnswers[i][j]))) {
$('#Q' + (i+1) + 'A' + correctAnswers[i][j] + 'Correct')
.attr('checked', true);
}
}
}
});

Demo →

关于javascript - 如何选择二维数组表示的所有复选框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5972709/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com