2017-05-11 4 views
0

JavaScriptgetElementByld nicht arbeiten - JavaScript

var stuAverage; 
function calcAvg(gradeInfo) 
    { 
    finalExam = document.getElementById("finalExam").value; 
    homework = document.getElementById("homework").value; 
    projects = document.getElementById("projects").value; 
    stuAverage = (finalExam * .1) + (homework * .4) + (projects * .5); 
    document.getElementById("stuAverage").value=stuAverage; 
    alert("Your average is " + stuAverage); 
    } 

HTML

<form action="#" name="gradeInfo"> 
<p> 
Enter Final Exam Grade: 
<input type="text" name="finalExam" size="4" /><br /> 
Enter Homework Grade: 
<input type="text" name="homework" size="4" /><br /> 
Enter Projects Grade: 
<input type="text" name="projects" size="4" /><br /> 
<br /><br /> 
<input type="button" value="AVERAGE" onclick="calcAvg(gradeInfo)" /> 
<input type="button" value="CLEAR" onclick="clearData(gradeInfo)" /> 
<br /><br /> 
Your Average is: 
<input type="text" name="stuAverage" size="4" /><br /> 
</p> 
</form> 

Der Versuch, herauszufinden, wie die getElementById mit DOM zu verwenden, aber ich habe Probleme mit der Logik zu verstehen.

Die CLEAR-Funktion funktioniert aber wieder, ich möchte getElementById verwenden, um diese Arbeit vorzugsweise zu machen.

Vielen Dank für jede Hilfe.

+1

Ich sehe keine HTML-Elemente mit diesen IDs. Nur Namen. – 4castle

+0

@ david.pfx nein, es sieht so aus als wäre ich neu im getElementById Konzept und brauchte eine kleine Klärung. Ich habe niemanden gebeten, es für mich zu tun, aber ich schätze die Einstellung. –

Antwort

1

Verwenden id nicht name (das ist, warum es getElementById genannt) so

<input type="text" id="finalExam" name="finalExam" size="4" /><br /> 

oder

<input type="text" id="finalExam" size="4" /><br /> 

nicht

<input type="text" name="finalExam" size="4" /><br /> 
+0

Ich verstehe jetzt, danke für die Erklärung. –

1

Sie fehlen ID-Attribut.

Versuch id = "finalExam" in Ihrem Eingang

Verwandte Themen