在线测验:通过选择不同的单选按钮将答案和问题分为3类

Online-Quiz: Dividing the answers and questions in to 3 Categories by choosing different Radio-Buttons

本文关键字:答案 单选按钮 问题 3类 选择 在线      更新时间:2023-09-26

我在更新在线测验时遇到了问题。

我想通过点击单选按钮对我的问题和答案进行分类。这是我的html代码:

<fieldset id="my" data-role="controlgroup" data-mini="true">
    <legend>Choose a Category</legend>
    <input type="radio" name="radio-mini" id="radio-mini-1" value="choice-1"  />
    <label for="radio-mini-1">Amateur</label>
    <input type="radio" name="radio-mini" id="radio-mini-2" value="choice-2"  />
    <label for="radio-mini-2">Middle</label>
    <input type="radio" name="radio-mini" id="radio-mini-3" value="choice-3"  />
    <label for="radio-mini-3">Legend</label>
</fieldset>
<a href="#" id="Next" data-role="button" onclick="nextStart()">Send</a>

我有3个单选按钮。这些单选按钮也有它们自己的多维数组。在我选择一个类别之后,数组名称应该重命名为一个一般的数组名称"question",因为对于这个数组名称,我有很多不同的函数,我不想为每个数组写。点击Send-Button后的javascript代码:

function nextStart()    
{
//document.getElementById("quiz").submit();
$.mobile.changePage( "quiz.html", 
{
    transition: "pop",
    reverse: false,
    changeHash: false
});

$("input[name=radio-mini]:checked").each(function next() 
{
        if ($(this).val() = "choice-1")
        {
            category = "amateur";   
        }
        else if ($(this).val() = "choice-2")
        {   
            schwierigkeit = "middle";
        }
        else 
        {
            schwierigkeit = "legend";
        }
}); 
}

现在我告诉我的通用数组"question"它从哪个数组中获得信息:

    if(category = "amateur")
    {       
        question = amateur.slice(); 
    }
    else if (category = "middle")
    {
        question = middle.slice();
    }
    else
    {
        question = legend.slice();
    }

如果我点击类别2或3"图例",然后在发送按钮上,我只在旁边得到第一个阵列"业余"的答案和问题。所以我认为它没有在函数

后面保存正确的数组名
nextStart() 

但是我没有解决它的方法…有人能帮帮我吗?

那就太好了,事先谢谢你:-)

正如Ben Lee已经说过的,您正在使用赋值操作符而不是相等操作符。应该是这样的:

if ($(this).val() == "choice-1") {
    category = "amateur";
}
else if ($(this).val() == "choice-2") {
    category = "middle";
}
else {
    category = "legend";
}

看演示。

更新:

我完全错过了下面的代码,它包含相同的错误。谢谢,本!

if(category == "amateur")
{       
    question = amateur.slice(); 
}
else if (category == "middle")
{
    question = middle.slice();
}
else
{
    question = legend.slice();
}