Warum wird mein akutelles Alter nicht in der Klammer angezeigt?

2 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet
<span id="alter"></span</p>

Da fehlt eine schließen Klammerfür das HTML '>' und eine Klammer für den Inhalt ')'.


haveyou 
Beitragsersteller
 10.01.2025, 11:19

Danke für deine Antwort !

Kannst du mir vlt. den ganzen HTML Code ausgeben, entweder es funktioniert nicht oder ich habe wieder was falsch gemacht

Destranix  10.01.2025, 11:20
@haveyou
<p>Geburtsdatum: 28.06.2001 (<span id="alter"></span>)</p>

Davor und danach natürlich entsprechend die reste des HTML-Dokuments, dmait es gültig ist.

haveyou 
Beitragsersteller
 10.01.2025, 11:35
@Destranix

Danke für deine Antowrt aber leider funktioniert es immer noch nicht richtig

HTML:

  <p>Geburtsdatum: 13.03.2005 (<span id="alter"></span>)</p>

JS:

const geburtsdatum = new Date(2005, 3, 13); 


function berechneAlter(geburtsdatum) {
    const heute = new Date();
    let alter = heute.getFullYear() - geburtsdatum.getFullYear();
    const monatDifferenz = heute.getMonth() - geburtsdatum.getMonth();
    const tagDifferenz = heute.getDate() - geburtsdatum.getDate();


    if (monatDifferenz < 0 || (monatDifferenz === 0 && tagDifferenz < 0)) {
        alter--;
    }


    return alter;
}


const alter = berechneAlter(geburtsdatum);
document.getElementById('alter').textContent = alter;



haveyou 
Beitragsersteller
 10.01.2025, 11:36
@haveyou

Mein aktuelles Alter wird nicht in der Klammer angezeigt

Destranix  10.01.2025, 11:38
@haveyou

Also bei mir geht es:

<!DOCTYPE html>
<html>
<head>
    <title>Test</title>
    <style>

    </style>
    <script>
    const geburtsdatum = new Date(2005, 3, 13);


    function berechneAlter(geburtsdatum) {
        const heute = new Date();
        let alter = heute.getFullYear() - geburtsdatum.getFullYear();
        const monatDifferenz = heute.getMonth() - geburtsdatum.getMonth();
        const tagDifferenz = heute.getDate() - geburtsdatum.getDate();


        if (monatDifferenz < 0 || (monatDifferenz === 0 && tagDifferenz < 0)) {
            alter--;
        }


        return alter;
    }

    function init(){
        const alter = berechneAlter(geburtsdatum);
        document.getElementById('alter').textContent = alter;
    }
    document.addEventListener("DOMContentLoaded", init);
    </script>
</head>
<body>

<p>Geburtsdatum: 13.03.2005 (<span id="alter"></span>)</p>

</body>
</html>
GamersGame  11.01.2025, 07:26
@haveyou

Lad dir mal Visual Studio Code herunter, da werden dir solche Fehler angezeigt. Was hast du denn als Code Editor benutzt? Den Windows Editor, Notepad++?

Lässt Du das so laufen mit "HTML:" und "JS:"? Oder ist das HTML-Dokument in der richtigen Syntax gebettet?

Das JavaScript muss zumindest mit einem <script> vor dem JS und </script> gekennzeichnet sein. Der HTML-Bereich benötigt auch noch eine ordentliche Einbettung in validen Code (steht im Antwortbereich weiter unten z.B.).