jQuery Eingabe unten einfügen?

1 Antwort

Vom Fragesteller als hilfreich ausgezeichnet

1) Der style-Tag gehört in den head.

2) Du schließt den body viel zu früh. Der erste schließende body-Tag muss raus.

3) Aktuell hängst du das Eingabefeld selbst in dein Element mit der Klasse liste. Du sollst aber den Text aus dem Eingabefeld in ein p-Element einfügen und dieses anhängen.

const text = $(".eingabe > input").val();
$(`<p>${text}</p>`).appendTo(".liste");

Beachte in diesem Zug, dass Paragraphen nicht geschachtelt werden können. Ändere dein Element mit der Klasse liste in ein div o.ä..

Jockelii7500 
Fragesteller
 04.12.2022, 16:54

Vielen Dank! Wie der schließende body tag da rein kommt kann ich mir selbst nicht erklären und dass der style tag in den head muss weiß ich eigentlich auch lol

0
Jockelii7500 
Fragesteller
 04.12.2022, 17:00

Ich habe gerade nochmal gelesen, dass der Inhalt als ein neues <p> Element angehängt werden soll. wie bekomme ich das hin?

0
Jockelii7500 
Fragesteller
 04.12.2022, 17:16
@regex9

Entschuldige, ich sitze einfach schon zu lange an der Aufgabe, mein Kopf funktioniert nicht mehr so wie er soll.

0
Jockelii7500 
Fragesteller
 04.12.2022, 17:43
@regex9

Ich habe alles versucht und verstehe immer noch nicht warum es nicht funktioniert, ich bin am verzweifeln.

Was mache ich falsch?

<!DOCTYPE html>
<html lang="de">
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Praktikum Webanwendungen 1</title>
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>


        <script>
            const text = $(".eingabe > input").val();
                $('<p>${text}</p>').appendTo(".liste");
        </script>
    </head>
    <style>
        h1{
            font-size: 50px;
        }


        div{
            float: left;
            margin: 10px;
        }


        .aufgabe{
            font-weight: bold;
            font-size: larger;
        }   
    </style>
    <body>
        <h1>Todo Liste</h1>
        <div class="aufgabe">Aufgabe:</div>
        <div class="eingabe"> <input type="text"> </div>
        <div class="erstellen"> <input type="submit" value="Erstellen"> </div>
        <br><br>
        <div class="liste"></div>
  </body>
</html>
0
regex9  04.12.2022, 17:50
@Jockelii7500

Zum einen ist der style-Tag noch immer außerhalb des head und zum anderen hast du aus unerklärlichen Gründen den click-Handler entfernt.

Überlege erst, was du tun willst, denn Trial-and-error-Games sind nicht zielführend. Wenn es dir hilft, dann formuliere den Ablauf erst in Stichpunkten oder erstell dir ein Struktogramm. Erst danach schreibst du den Code.

1
Jockelii7500 
Fragesteller
 04.12.2022, 18:01
@regex9

Dankeschön für deine Geduld, du hast mir wirklich wahnsinnig geholfen!

0