Javascript 从单选按钮和忽略文本字段计算测验结果的Java脚本
我正在创建一个测试,计算结果并给出一个百分比。它在底部显示正确答案。结果可以通过电子邮件发送给我。下面的代码有效。请原谅布局,我对这个很陌生Javascript 从单选按钮和忽略文本字段计算测验结果的Java脚本,javascript,textfield,radiobuttonlist,Javascript,Textfield,Radiobuttonlist,我正在创建一个测试,计算结果并给出一个百分比。它在底部显示正确答案。结果可以通过电子邮件发送给我。下面的代码有效。请原谅布局,我对这个很陌生 <html><head><title></title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link href="testpageCSS.css" rel="stylesheet
<html><head><title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="testpageCSS.css" rel="stylesheet" type="text/css">
<script language="JavaScript">
<!--
var numQues = 4;
var numChoi = 4;
var answers = new Array(4);
answers[0] = "33v 1A";
answers[1] = "Climbs from between 8 -12v up to battery Voltage";
answers[2] = "Main power relay stuck open";
answers[3] = "2 Meters";
function getScore(form) {
var score = 0;
var currElt;
var currSelection;
for (i=0; i<numQues; i++) {
currElt = i*numChoi;
for (j=0; j<numChoi; j++) {
currSelection = form.elements[currElt + j];
if (currSelection.checked) {
if (currSelection.value == answers[i]) {
score++;
break;
}
}
}
}
score = Math.round(score/numQues*100);
form.percentage.value = score + "%";
var correctAnswers = "";
for (i=1; i<=numQues; i++) {
correctAnswers += i + ". " + answers[i-1] + "\r\n";
}
form.solutions.value = correctAnswers;
}
// -->
</script>
</head>
<body>
<div id="centerTOP">
<h1> HCA001</h1>
</div>
<div id="center">
<form name="quiz" method="post" action="mailto:myemail"enctype="text/plain">
<h2>First name:</h2>
<input type="text" name="Firstname" value="" style="color: #000000;"
background-color: #d9d9d9;">
<h2>Last name:</h2>
<input type="text" name="Lastname" value="" style="color: #000000; background-color: #d9d9d9;">
<h2>Trade Partner:</h2>
<input type="text" name="Trade Partner" value="" style="color: #000000; background-color: #d9d9d9;">
<br><br><br>
<p>
<h2>1. What is the output Voltage and Current of the Charger?</h2><br>
<input type="radio" name="q1" value="24v 1A">24v 1A<br>
<input type="radio" name="q1" value="33v 5A">33v 5A<br>
<input type="radio" name="q1" value="24v 5A">24v 5A<br>
<input type="radio" name="q1" value="33v 1A">33v 1A<br><br><br>
<p>
<h2>2. If you were checking the communications voltage for any of the powered options (Auto Hinge, Powered Footplate or Powered Swivel)what would you expect to see?</h2><br>
<input type="radio" name="q2" value="Climbs from between 8 -12v up to battery Voltage">Climbs from between 8 -12v up to battery Voltage<br>
<input type="radio" name="q2" value="Climbs from 4v to Battery Voltage">Climbs from 4v to Battery Voltage<br>
<input type="radio" name="q2" value="24v">24v<br>
<input type="radio" name="q2" value="33v">33v<br><br><br>
<p>
<h2>3. What does it mean if fault code 'E' is displayed on the diagnostic display?</h2><br>
<input type="radio" name="q3" value="Main power relay stuck open">Main power relay stuck open<br>
<input type="radio" name="q3" value="Main power relay welded closed">Main power relay welded closed<br>
<input type="radio" name="q3" value="The main power relay closed early">The main power relay closed early<br>
<input type="radio" name="q3" value="Error">Error<br><br><br>
<p>
<h2>4. What is the minimum length of a Slidetrack rail?</h2><br>
<input type="radio" name="q4" value="2 Meters">2 Meters<br>
<input type="radio" name="q4" value="2.1 Meters">2.1 Meters<br>
<input type="radio" name="q4" value="2.2 Meters">2.2 Meters<br>
<input type="radio" name="q4" value="2.5 Meters">2.5 Meters<br><br><br>
<p>
<input type="button" value="Get score" onClick="getScore(this.form)"><br> <br><br>
<font face="arial" color="#5f5f5f">Score = <input type=text size=15 name="percentage" style="color: #000000; background-color: #d9d9d9;"><br><br>
Correct answers:</font><br>
<textarea name="solutions" wrap="virtual" rows="10" cols="40" style="color: #000000; background-color: #d9d9d9;"></textarea>
<br><br>
<input type="submit" value="Send Form">
<input type="reset" value="Clear Form">
</form>
</div>
</body></html>
HCA001
名字:
设置类型属性收音机并使用
var inputs = form1.elements;
for (var i = 0; i < inputs.length; ++i) {
if (inputs[i].type == 'radio') {
}
}
var输入=form1.1元素;
对于(变量i=0;i
您可以为应该评分的元素分配一个类,然后迭代这些元素
下面是一个演示:
JS
var myBtn = document.getElementById('getScore');
myBtn.addEventListener('click', function() {
var elems = document.getElementsByClassName('quiz');
for (var i = 0; i < elems.length; i++) {
if (elems[i].checked) {
console.log(elems[i].value);
//add your scoring logic here. elems[i].value is the selected value
}
}
});
var myBtn=document.getElementById('getScore');
myBtn.addEventListener('click',function(){
var elems=document.getElementsByClassName('quick');
对于(变量i=0;i
HTML
<form name="quiz" method="post" action="mailto:myemail" enctype="text/plain">
<h2>First name:</h2>
<input type="text" name="Firstname" value="" style="color: #000000; background-color: #d9d9d9;">
<h2>Last name:</h2>
<input type="text" name="Lastname" value="" style="color: #000000; background-color: #d9d9d9;">
<h2>Trade Partner:</h2>
<input type="text" name="Trade Partner" value="" style="color: #000000; background-color: #d9d9d9;">
<br>
<br>
<br>
<p>
<h2>1. What is the output Voltage and Current of the Charger?</h2>
<br>
<input class="quiz" type="radio" name="q1" value="24v 1A">24v 1A
<br>
<input class="quiz" type="radio" name="q1" value="33v 5A">33v 5A
<br>
<input class="quiz" type="radio" name="q1" value="24v 5A">24v 5A
<br>
<input class="quiz" type="radio" name="q1" value="33v 1A">33v 1A
<br>
<br>
<br>
<p>
<h2>2. If you were checking the communications voltage for any of the powered options (Auto Hinge, Powered Footplate or Powered Swivel)what would you expect to see?</h2>
<br>
<input class="quiz" type="radio" name="q2" value="Climbs from between 8 -12v up to battery Voltage">Climbs from between 8 -12v up to battery Voltage
<br>
<input class="quiz" type="radio" name="q2" value="Climbs from 4v to Battery Voltage">Climbs from 4v to Battery Voltage
<br>
<input class="quiz" type="radio" name="q2" value="24v">24v
<br>
<input class="quiz" type="radio" name="q2" value="33v">33v
<br>
<br>
<br>
<p>
<h2>3. What does it mean if fault code 'E' is displayed on the diagnostic display?</h2>
<br>
<input class="quiz" type="radio" name="q3" value="Main power relay stuck open">Main power relay stuck open
<br>
<input class="quiz" type="radio" name="q3" value="Main power relay welded closed">Main power relay welded closed
<br>
<input class="quiz" type="radio" name="q3" value="The main power relay closed early">The main power relay closed early
<br>
<input class="quiz" type="radio" name="q3" value="Error">Error
<br>
<br>
<br>
<p>
<h2>4. What is the minimum length of a Slidetrack rail?</h2>
<br>
<input class="quiz" type="radio" name="q4" value="2 Meters">2 Meters
<br>
<input class="quiz" class="quiz" type="radio" name="q4" value="2.1 Meters">2.1 Meters
<br>
<input class="quiz" type="radio" name="q4" value="2.2 Meters">2.2 Meters
<br>
<input class="quiz" type="radio" name="q4" value="2.5 Meters">2.5 Meters
<br>
<br>
<br>
<p>
<input id="getScore" type="button" value="Get score">
<br>
<br>
<br>
<font face="arial" color="#5f5f5f">Score = <input type=text size=15 name="percentage" style="color: #000000; background-color: #d9d9d9;"><br><br>
Correct answers:</font>
<br>
<textarea name="solutions" wrap="virtual" rows="10" cols="40" style="color: #000000; background-color: #d9d9d9;"></textarea>
<br>
<br>
<input type="submit" value="Send Form">
<input type="reset" value="Clear Form">
</form>
名字:
姓氏:
贸易伙伴:
1.充电器的输出电压和电流是多少?
24v 1A
33v 5A
24v 5A
33v 1A
2.如果您正在检查任何电动选项(自动铰链、电动踏板或电动旋转)的通信电压,您希望看到什么?
从8-12v上升到蓄电池电压
从4v上升到蓄电池电压
24v
33v
3.如果诊断显示屏上显示故障代码“E”,这意味着什么?
主电源继电器卡在打开位置
主电源继电器焊接闭合
主电源继电器提前关闭
错误
4.滑轨的最小长度是多少?
2米
2.1米
2.2米
2.5米
分数=
正确答案:
将一个类添加到作为测验一部分的元素中,并使用该类而不是表单元素。在要访问的项目之前,您向元素列表添加了三个项目。如果这是一个数组,比如说,vara=[1,2,3]代码>然后你通过为(var i=0,i<3;i++){var b=a[i];}
获取这些值,然后你向数组中添加了项,并使其成为var a=[5,6,7,1,2,3]
,如何更改for循环以确保仍然获得相同的结果?另外,作为参考,在First Name输入的style属性中有一个额外的双引号。您已经命名了所有单选按钮元素——为什么不使用document.getElementsByName()?
<form name="quiz" method="post" action="mailto:myemail" enctype="text/plain">
<h2>First name:</h2>
<input type="text" name="Firstname" value="" style="color: #000000; background-color: #d9d9d9;">
<h2>Last name:</h2>
<input type="text" name="Lastname" value="" style="color: #000000; background-color: #d9d9d9;">
<h2>Trade Partner:</h2>
<input type="text" name="Trade Partner" value="" style="color: #000000; background-color: #d9d9d9;">
<br>
<br>
<br>
<p>
<h2>1. What is the output Voltage and Current of the Charger?</h2>
<br>
<input class="quiz" type="radio" name="q1" value="24v 1A">24v 1A
<br>
<input class="quiz" type="radio" name="q1" value="33v 5A">33v 5A
<br>
<input class="quiz" type="radio" name="q1" value="24v 5A">24v 5A
<br>
<input class="quiz" type="radio" name="q1" value="33v 1A">33v 1A
<br>
<br>
<br>
<p>
<h2>2. If you were checking the communications voltage for any of the powered options (Auto Hinge, Powered Footplate or Powered Swivel)what would you expect to see?</h2>
<br>
<input class="quiz" type="radio" name="q2" value="Climbs from between 8 -12v up to battery Voltage">Climbs from between 8 -12v up to battery Voltage
<br>
<input class="quiz" type="radio" name="q2" value="Climbs from 4v to Battery Voltage">Climbs from 4v to Battery Voltage
<br>
<input class="quiz" type="radio" name="q2" value="24v">24v
<br>
<input class="quiz" type="radio" name="q2" value="33v">33v
<br>
<br>
<br>
<p>
<h2>3. What does it mean if fault code 'E' is displayed on the diagnostic display?</h2>
<br>
<input class="quiz" type="radio" name="q3" value="Main power relay stuck open">Main power relay stuck open
<br>
<input class="quiz" type="radio" name="q3" value="Main power relay welded closed">Main power relay welded closed
<br>
<input class="quiz" type="radio" name="q3" value="The main power relay closed early">The main power relay closed early
<br>
<input class="quiz" type="radio" name="q3" value="Error">Error
<br>
<br>
<br>
<p>
<h2>4. What is the minimum length of a Slidetrack rail?</h2>
<br>
<input class="quiz" type="radio" name="q4" value="2 Meters">2 Meters
<br>
<input class="quiz" class="quiz" type="radio" name="q4" value="2.1 Meters">2.1 Meters
<br>
<input class="quiz" type="radio" name="q4" value="2.2 Meters">2.2 Meters
<br>
<input class="quiz" type="radio" name="q4" value="2.5 Meters">2.5 Meters
<br>
<br>
<br>
<p>
<input id="getScore" type="button" value="Get score">
<br>
<br>
<br>
<font face="arial" color="#5f5f5f">Score = <input type=text size=15 name="percentage" style="color: #000000; background-color: #d9d9d9;"><br><br>
Correct answers:</font>
<br>
<textarea name="solutions" wrap="virtual" rows="10" cols="40" style="color: #000000; background-color: #d9d9d9;"></textarea>
<br>
<br>
<input type="submit" value="Send Form">
<input type="reset" value="Clear Form">
</form>