Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| de:modul:m307:learningunits:lu02:aufgaben:07 [2026/04/03 09:51] – angelegt vdemir | de:modul:m307:learningunits:lu02:aufgaben:07 [2026/04/03 10:45] (aktuell) – vdemir | ||
|---|---|---|---|
| Zeile 13: | Zeile 13: | ||
| In der Aufgabe 6 dieses Kapitels haben Sie JSON-Daten im Browserfenster dynamisch ausgeben können. Bisher war diese Ausgabe in Rohform vorhanden, d.h. mit wenig bis keiner HTML-Formatierung. | In der Aufgabe 6 dieses Kapitels haben Sie JSON-Daten im Browserfenster dynamisch ausgeben können. Bisher war diese Ausgabe in Rohform vorhanden, d.h. mit wenig bis keiner HTML-Formatierung. | ||
| - | Unten finden | + | Nachfolgend sehen Sie die HTML-Ausgabe |
| - | {{: | + | {{: |
| + | |||
| + | ===== Auftrag ===== | ||
| + | Bei dieser Aufgabe geht es darum sich mit den verschiedenen Technologien wie HTML, CSS und JavaScript **in Kombination** vertraut zu machen. | ||
| + | |||
| + | Ihr Auftrag besteht aus Teilaufgaben: | ||
| + | |||
| + | - Code importieren + Inhalt testen - 10 Min. | ||
| + | - JSON-Daten ergänzen (mehr Datensätze) - 5 Min. | ||
| + | - JSON-Daten erweiteren (weitere Hobbies) - 5 Min. | ||
| + | - Scripte auf JSON-Erweiterungen anpassen - 10 Min. | ||
| + | - Neues Filterfeld anlegen - 10 Min. | ||
| + | |||
| + | ==== Teil 1: Code importieren + Inhalt testen ==== | ||
| + | |||
| + | - Legen Sie im VS Code einen Ordner mit dem Namen lu02_L07 an. | ||
| + | - Copieren Sie die den Inhalt dieses nachfolgenden {{: | ||
| + | - Führen Sie das File // | ||
| + | - Filtern Sie die Liste nach //Namen// und Hobbies. | ||
| + | |||
| + | ==== Teil 2: JSON-Daten ergänzen ==== | ||
| + | - Aktuell sind 10 Datensätze im JSON-File. Legen Sie weitere mindestens 10 Datensätze (Personen an). | ||
| + | - Testen Sie die Änderung im Browserfenster (anzeigen + filtern). | ||
| + | |||
| + | ==== Teil 3: JSON-Daten erweiteren ==== | ||
| + | - Aktuell sind 4 Hobbies vorhanden: Lesen, Fussball, Malen, Schwimmen. | ||
| + | - Überschreiben Sie die einige Datensätze Ihrer Wahl mit den neuen Hobbies //Gamen// und // | ||
| + | - Hinweis: Die neuen Hobbies werden zwar angezeigt, man kann aber aktuell nicht nach diesen Filtern, weil die Filter noch nicht angepasst wurden. | ||
| + | |||
| + | ==== Teil 4: Scripte auf JSON-Erweiterungen anpassen ==== | ||
| + | - Damit wir nach den Hobbies filtern können, müssen wir uns // | ||
| + | - Ergänzen Sie also im entsprechenden div des HTML-Formulars die Liste der Checkboxen mit den neuen Hobbies //Gamen// und //Reisen//. | ||
| + | - Testen Sie die Filter-Erweitung: | ||
| + | - Testen Sie die Funktion des Filters: Die Liste sollten nun auch nach den Hobbies //Gamen// und //Reisen// gefiltert werden können. | ||
| + | - | ||
| - | |||
| - | ===== Auftrag ===== | ||
| - | - **Aufgabe** | ||
| - | * Lassen Sie das nachfolgende Script laufen und analysieren die einzelnen Codeteile. | ||
| - | - **Aufgabe** | ||
| - | *Kommentieren Ihre Erkenntnisse im Code durch entsprechende HTML- oder JS-Codeeinträge. | ||
| - | - **Experiementiertips** | ||
| - | * Ergänzen Sie das JSON-File durch weitere Zeilen und lassen Sie es sich im Browser anzeigen. | ||
| - | * Ergänzen Sie das JSON-File durch weitere Subarrays, z.b. jeder Person erhält eine Adresse, oder die Lieblingslieder einer Person, ... | ||
| - | * Verändern Sie die HTML-Formatierung, | ||
| - | **index.html** | ||
| - | <code html> | ||
| - | < | ||
| - | <html lang=" | ||
| - | < | ||
| - | <meta charset=" | ||
| - | < | ||
| - | </ | ||
| - | < | ||
| - | < | ||
| - | <div id=" | ||
| - | < | ||
| - | fetch(" | ||
| - | .then(response => response.json()) | ||
| - | .then(data => { | ||
| - | // | ||
| - | const ausgabe = document.getElementById(" | ||
| - | for (let i = 0; i < data.lernende.length; | ||
| - | const lernenderDiv = document.createElement(" | ||
| - | const ueberschrift = document.createElement(" | ||
| - | ueberschrift.textContent = " | ||
| - | // | ||
| - | const idP = document.createElement(" | ||
| - | idP.textContent = "ID: " + data.lernende[i].id; | ||
| - | // | ||
| - | const nameP = document.createElement(" | ||
| - | nameP.textContent = "Name: " + data.lernende[i].name + " " + data.lernende[i].nachname; | ||
| - | // | ||
| - | const hobbyTitel = document.createElement(" | ||
| - | hobbyTitel.textContent = " | ||
| - | // | ||
| - | const hobbyListe = document.createElement(" | ||
| - | // | ||
| - | for (let j = 0; j < data.lernende[i].hobbies.length; | ||
| - | const hobbyItem = document.createElement(" | ||
| - | hobbyItem.textContent = data.lernende[i].hobbies[j]; | ||
| - | hobbyListe.appendChild(hobbyItem); | ||
| - | } | ||
| - | // | ||
| - | lernenderDiv.appendChild(ueberschrift); | ||
| - | lernenderDiv.appendChild(idP); | ||
| - | lernenderDiv.appendChild(nameP); | ||
| - | lernenderDiv.appendChild(hobbyTitel); | ||
| - | lernenderDiv.appendChild(hobbyListe); | ||
| - | // | ||
| - | ausgabe.appendChild(lernenderDiv); | ||
| - | } | ||
| - | }) | ||
| - | .catch(err => { | ||
| - | console.error(" | ||
| - | }); | ||
| - | </ | ||
| - | </ | ||
| - | </ | ||
| - | </ | ||
| ===== Lösungen ===== | ===== Lösungen ===== | ||
| - | [[de: | + | [[de: |
| ---- | ---- | ||