首页 > 解决方案 > 添加2个功能

问题描述

我试图通过调用我的其他函数来将我的 getExamGrades 和 getLabGrades 添加在一起以获得总成绩,但我尝试过的没有任何效果。到目前为止,我所做的一切都消除了我调用的两个函数,并将所有内容留空。下面的代码工作得很好,只需要最后一部分的帮助,然后我就可以找出其他变量和函数。

<!DOCTYPE html>
<html>
<header>
<script>

function getExamGrades()
{
var exam1 = document.getElementById("Exam1").value;
var exam2 = document.getElementById("Exam2").value;
var exam3 = document.getElementById("Exam3").value;
var Exams = Number(exam1) + Number(exam2) + Number(exam3);
document.getElementById("examGrade").innerHTML = Exams;

}
function getLabGrades()
{
var lab1 = document.getElementById("Lab1").value;
var lab2 = document.getElementById("Lab2").value;       
var lab3 = document.getElementById("Lab3").value;

var Labs = Number(lab1) + Number(lab2) + Number(lab3);
document.getElementById("labGrade").innerHTML = Labs;
}
function getTotalGrades()
{
 //var Total = Number(getExamGrades()) + Number(getLabGrades();
 document.getElementByID("totalGrade").innerHTML = Total;
 }

</script>
</header>
<body>

Exam1: <input type = "text" name="Exam1" value ="100" id="Exam1">
Exam2: <input type = "text" name="Exam2" value ="100" id="Exam2">
Exam3: <input type = "text" name="Exam3" value ="100" id="Exam3">
<br><br>
<button onClick="getExamGrades()"> Calculate Exam Grade </button>
Total: <output id="examGrade"> </output>
<br><br>
Lab1: <input type = "text" name="Lab1" value ="100" id="Lab1">
Lab2: <input type = "text" name="Lab2" value ="100" id="Lab2">
Lab3: <input type = "text" name="Lab3" value ="100" id="Lab3"> 
<br><br>
<button onClick="getLabGrades()"> Calculate Lab Grade </button>
Total: <output id="labGrade"> </output>
<br><br>
<button onClick="getTotalGrades()"> Calculate Total Grade </button>
Final Grade: <output id="totalGrade"> </output>



</body>
</html>

标签: javascript

解决方案


您的函数没有返回值。如果他们这样做了,那么您正在尝试的将起作用。试试这样:

function getExamGrades()
{
var exam1 = document.getElementById("Exam1").value;
var exam2 = document.getElementById("Exam2").value;
var exam3 = document.getElementById("Exam3").value;
var Exams = Number(exam1) + Number(exam2) + Number(exam3);
document.getElementById("examGrade").innerHTML = Exams;
return Exams;
}

function getLabGrades()
{
var lab1 = document.getElementById("Lab1").value;
var lab2 = document.getElementById("Lab2").value;       
var lab3 = document.getElementById("Lab3").value;

var Labs = Number(lab1) + Number(lab2) + Number(lab3);
document.getElementById("labGrade").innerHTML = Labs;
return Labs;
}

function getTotalGrades()
{
var Total = Number(getExamGrades()) + Number(getLabGrades());
document.getElementById("totalGrade").innerHTML = Total;
}

我还为您解决了其他一些小问题。您可以在这里看到一个工作示例:http: //jsfiddle.net/8js5uewc/2/


推荐阅读