我想在测验结束时总计,怎么做?

时间:2014-10-17 08:45:13

标签: javascript html html5

<script type="text/javascript">
    <!--
    function checkValue(option) {
        if (option == "4") {
            alert("Correct");
        }
        else {
            alert("False, Option (4) is the Correct Answer.")
        }
    }
    //-->
</script>

<h3>1.  What does HTML stand for?</h3> <br /><br />

1. <input type="radio" name="fav_color1" value="1" onclick="checkValue(this.value);"   /> Hyper Text Markup Languages <br /> <br />
2. <input type="radio" name="fav_color1" value="2" onclick="checkValue(this.value);" /> Highest Text Markup Language <br /> <br />
3. <input type="radio" name="fav_color1" value="3" onclick="checkValue(this.value);" /> Hyper Total Markup Language <br /> <br />
4. <input type="radio" name="fav_color1" value="4" onclick="checkValue(this.value);" /> Hyper Text Markup Language <br /> <br />

1 个答案:

答案 0 :(得分:0)

从你所拥有的内容看起来你只有3个html页面,每个页面上都有一些javascript来提醒正确的答案。在每个页面之后,您将调用一个新的静态页面。

有三种选择:

  1. 使用提交按钮将输入字段包装在表单中。在提交该表单时,服务器可以处理答案(使用服务器端语言,如php,ruby,python或.net),然后可能在表单中的隐藏字段中保持计数。

  2. 在javascript的一页中写下所有内容。这可能会变得复杂,具体取决于您是否一次显示一个问题。然后,您可以在提交每个问题时维护一个带有分数的变量,或者只是在最后评估javascript中的所有问题。

  3. 最后(我不会在任何方面建议这种方法),你可以为每一个对与错的组合创建一个页面,然后根据以前哪些答案对或错来调用不同的页面。所以它可以这样工作:在q1.html而不是有一个链接到q2.html你会有一个空白链接,你用javascript中断。如果答案是正确的,那么打开页面q2.html但是如果在每个页面上都有不正确的打开页面q2_q1.html(q2.html和q2_q1.html,你需要有类似的功能,从而导致问题3的4页。假设只有3个问题你只需要把11页放在一起(假设你只想在最后一页上显示总分)。它不可扩展而且不是正确的方法,但是(我们将使用相当简单的js工作。