Von der Eingabe in der HTML-Eingabe gibt der Benutzer den Namen des Mitarbeiters und die Anzahl der Arbeitsstunden ein. Von hier aus auf dem Submit-Button nimmt er die Informationen und speichert sie in den Variablen, so dass ich berechnen kann, wie viel ihr Gehalt war. Jetzt kommt auch das Überstundengeld. Ich dachte, das wäre auf dem richtigen Weg, aber wenn ich zu meinem HTML zurückgehe, wird "undefined" angezeigt. Irgendwelche Vorschläge?Gehaltsberechnungsfunktion in JavaScript funktioniert nicht
//Global Variables
var employeeName = document.getElementById("name").value;
var employeeHours = document.getElementById("hours").value;
function paySalary() {
if (employeeHours <= 40) {
var regtime = 11.00 * employeeHours;
var overtime = 0.00;
var salary = regtime;
} else if (employeeHours > 40) {
var regtime = (11.00 * 40);
var overtime = ((11.00 * 1.5) * (employeeHours - 40));
var salary = (regtime + overtime);
}
document.getElementById("results").innerHTML = "Employee Name: " + employeeName + " | Employee Gross Pay: " + salary;
}
//Event Listener to Submit
var submitButton = document.getElementById("submit");
if (submitButton.addEventListener) {
submitButton.addEventListener("click", paySalary, false);
} else if (submitButton.attachEvent) {
submitButton.attachEvent("onclick", paySalary);
}
ich das versucht, und ich habe es für eine ganze Sekunde zu arbeiten, und dann hat es geschafft nichts, aber gib mir einen Wert von 0. Ich glaube, das liegt an meinem: 'var employeeName = document.getElementById (" name "). Value; var employeeHours = document.getElementById ("Stunden"). Value; 'Gibt es etwas, was Sie vorschlagen? Ich glaube nicht, dass mein Eingabewert richtig zu meinem Javascript auf dem onclick geht – Megan
Tun es so, das funktioniert perfekt. Das Problem war, dass Sie die globalen Variablen employeeName und employeeHours deklarierten, die nur beim Laden der Seite ausgelöst werden, d. H. Nur einmal initialisiert werden. Nachdem Sie die Funktion aufgerufen haben, wird sie nicht mehr initialisiert, wenn die Variablen global sind. Also tu es so. – Kamesh
Bitte upvote und akzeptiere :) – Kamesh