JavaScript Preis Calculator?
document.addEventListener('DOMContentLoaded', function() {
const slider = document.getElementById('diskspace');
const hiddenValue = document.getElementById('initialDiskspace');
const demo = document.getElementById('demo');
const selectedValue = document.getElementById('diskspaceOutput');
const selectedPrice = document.getElementById('priceOutput');
const initialDiskspaceValue = parseInt(new URLSearchParams(window.location.search).get('value')) || 0;
// Setze den initialen Speicherplatz
hiddenValue.value = initialDiskspaceValue;
// Variable für den aktuellen Preis
let currentPrice = 10; // Startpreis
// Funktion zur Berechnung des Preises
const calculatePrice = (value) => {
// Grundpreise
const basePrice = 10; // Grundpreis für den Server
const pricePerGB = 1; // Preis pro GB Speicher
const pricePerCPU = 1; // Preis pro CPU-Kern
// Eingabewerte holen
const diskspace = parseInt(value); // Speicherplatz in GB
const cpuCores = parseInt(document.getElementById('cpu').value); // Anzahl der CPU-Kerne
const os = document.getElementById('os').value; // Betriebssystem
// Betriebssystem-Aufschläge (hier Beispiel, wie man unterschiedliche Preise je nach Betriebssystem anwenden könnte)
let osPrice = 0;
if (os === 'windows') {
osPrice = 5; // Beispiel: Windows ist teurer
} else if (os === 'macos') {
osPrice = 10; // Beispiel: macOS ist noch teurer
}
// Berechne den Gesamtpreis
const totalPrice = basePrice + (diskspace * pricePerGB) + (cpuCores * pricePerCPU) + osPrice;
// Aktualisiere den angezeigten Preis
selectedPrice.innerText = `Gesamtpreis: ${totalPrice.toFixed(2)} €`;
return totalPrice;
};
// Setze den initialen Wert und Preis
selectedValue.innerText = slider.value;
calculatePrice(parseInt(slider.value));
// Event Listener für Änderungen am Slider
slider.oninput = function() {
selectedValue.innerText = this.value;
calculatePrice(parseInt(this.value));
};
// Formularabsenden mit verstecktem Wert und Preis
const form = document.querySelector('form');
form.addEventListener('submit', function(event) {
event.preventDefault();
hiddenValue.value = slider.value;
this.submit();
});
});
Hey das ist der Code uns er funktioniet nicht also nicht ganz richtig. Die rechnung ist falsch undzwar klappt nicht das 1GB Festplatte = 1€, 1GB Ram = 1€ und 1 Kern = 1€. und das dann einfach addiert wird das funktioniert nicht kann wer helfen? Es ust eine Website