写两段代码,一段是js,一段是html。要求实现html中有多个选择题,每个选项有具体的固定分值,例如3、2、1分,js需要计算这些分数的总和并更改在html中在答案的显示
时间: 2023-05-18 07:06:58 浏览: 81
习题html+js1
以下是js和html代码:
HTML代码:
```
<!DOCTYPE html>
<html>
<head>
<title>选择题计分器</title>
</head>
<body>
<h1>选择题计分器</h1>
<p>1. 以下哪个是编程语言?</p>
<input type="radio" name="q1" value="0">HTML
<input type="radio" name="q1" value="0">CSS
<input type="radio" name="q1" value="3">JavaScript
<input type="radio" name="q1" value="0">Photoshop
<br>
<p>2. 以下哪个是前端框架?</p>
<input type="radio" name="q2" value="0">Java
<input type="radio" name="q2" value="0">Python
<input type="radio" name="q2" value="2">React
<input type="radio" name="q2" value="0">MySQL
<br>
<p>3. 以下哪个是后端语言?</p>
<input type="radio" name="q3" value="0">HTML
<input type="radio" name="q3" value="0">CSS
<input type="radio" name="q3" value="0">JavaScript
<input type="radio" name="q3" value="1">PHP
<br>
<br>
<button onclick="calculateScore()">计算分数</button>
<p>你的得分是:<span id="score">0</span> 分</p>
<script src="script.js"></script>
</body>
</html>
```
JS代码:
```
function calculateScore() {
var score = 0;
var q1 = document.getElementsByName("q1");
var q2 = document.getElementsByName("q2");
var q3 = document.getElementsByName("q3");
for (var i = 0; i < q1.length; i++) {
if (q1[i].checked) {
score += parseInt(q1[i].value);
}
}
for (var i = 0; i < q2.length; i++) {
if (q2[i].checked) {
score += parseInt(q2[i].value);
}
}
for (var i = 0; i < q3.length; i++) {
if (q3[i].checked) {
score += parseInt(q3[i].value);
}
}
document.getElementById("score").innerHTML = score;
}
```
当用户点击“计算分数”按钮时,JS代码会遍历每个选择题的选项,计算出用户的得分并更新在HTML中的答案显示。
阅读全文