// Ensure the script runs after the DOM is fully loaded window.addEventListener("DOMContentLoaded", function() { // Funktion für den Brutto-Netto-Rechner window.calculateNet = function() { // Eingabefelder aus dem HTML abrufen const bruttoElement = document.getElementById("brutto"); const ageElement = document.getElementById("age"); const resultElement = document.getElementById("result"); if (!bruttoElement || !ageElement || !resultElement) { console.error("One or more required elements are missing from the HTML."); return; } const brutto = parseFloat(bruttoElement.value); const age = parseInt(ageElement.value); // Überprüfen, ob die Eingaben gültig sind if (isNaN(brutto) || brutto <= 0) { resultElement.innerHTML = "

Bitte einen gültigen Bruttolohn eingeben!<\/p>"; return; } if (isNaN(age) || age < 17 || age > 65) { resultElement.innerHTML = "

Bitte ein gültiges Alter eingeben \(zwischen 17 und 65\)!<\/p>"; return; } // Sozialversicherungsabzüge berechnen const ahv_iv_eo = brutto * 0.053; // AHV/IV/EO Abzug (5,3 %) const alv = (brutto <= 12350) ? brutto * 0.011 : (148200 * 0.011 + (brutto - 12350) * 0.005); // ALV-Abzug // Altersabhängige BVG-Berechnung let bvgRate = 0; if ((age >= 25) && (age <= 34)) { bvgRate = 0.07; // 7 % } if ((age >= 35) && (age <= 44)) { bvgRate = 0.10; // 10 % } if ((age >= 45) && (age <= 54)) { bvgRate = 0.15; // 15 % } if ((age >= 55) && (age <= 65)) { bvgRate = 0.18; // 18 % } const bvg = brutto * bvgRate; // BVG-Abzug berechnen // Gesamtabzüge berechnen const totalDeductions = ahv_iv_eo + alv + bvg; // Nettolohn berechnen const netto = brutto - totalDeductions; // Ergebnisse im HTML anzeigen resultElement.innerHTML = `

Ergebnis:<\/strong><\/p>

Bruttolohn: CHF ${brutto.toFixed(2)}<\/p>

AHV/IV/EO: CHF ${ahv_iv_eo.toFixed(2)}<\/p>

ALV: CHF ${alv.toFixed(2)}<\/p>

BVG: CHF ${bvg.toFixed(2)}<\/p>

Abzüge gesamt: CHF ${totalDeductions.toFixed(2)}<\/strong><\/p>

Nettolohn: CHF ${netto.toFixed(2)}<\/strong><\/p> `; }; });