MatzeAusNRW
New member
Guten Abend,
zunächst: Ich bin, was JS angeht, noch Anfänger. Ich lerne es jetzt seit 6 Monaten und stoße immer wieder auf Probleme, die mich tagelang beschäftigen. So auch diese beiden Probleme. Ich hoffe, Ihr könnt mir dabei etwas helfen.
Ich schreibe gerade ein Script, welches Schulfächer in eine Liste einfügen soll. Nun möchte ich aber, dass die Schulfächer in der Liste bei Hinzufügen alphabetisch sortiert werden. Ich denke, der Schlüssel hierzu ist array.sort();, aber leider weiß ich nicht, wo und wie genau ich array.sort(); einbinden soll. Ich würde außerdem gerne die Listenelement in der Liste mit einem Klick auf den Button "X" löschen wollen. Hierzu habe ich eine Funktion angelegt, die "loescheFach();" heißt. Wenn ich diese Funktion nun aber an die Schulfach-Elemente hänge, werden bei Klick auf ein einziges X alle Elemente gelöscht anstatt nur ein einziges Element.
Hier ist mein Code (HTML & JavaScript):
Ich hoffe, dass ich mich hier richtig ausgedrückt habe und dass Ihr mir helfen könnt.
Edit: Ich habe versucht, ein jfiddle für das Script zu erstellen, allerdings wird mir nach "Run" nichts ausgegeben.
Danke Euch,
Matze
zunächst: Ich bin, was JS angeht, noch Anfänger. Ich lerne es jetzt seit 6 Monaten und stoße immer wieder auf Probleme, die mich tagelang beschäftigen. So auch diese beiden Probleme. Ich hoffe, Ihr könnt mir dabei etwas helfen.
Ich schreibe gerade ein Script, welches Schulfächer in eine Liste einfügen soll. Nun möchte ich aber, dass die Schulfächer in der Liste bei Hinzufügen alphabetisch sortiert werden. Ich denke, der Schlüssel hierzu ist array.sort();, aber leider weiß ich nicht, wo und wie genau ich array.sort(); einbinden soll. Ich würde außerdem gerne die Listenelement in der Liste mit einem Klick auf den Button "X" löschen wollen. Hierzu habe ich eine Funktion angelegt, die "loescheFach();" heißt. Wenn ich diese Funktion nun aber an die Schulfach-Elemente hänge, werden bei Klick auf ein einziges X alle Elemente gelöscht anstatt nur ein einziges Element.
Hier ist mein Code (HTML & JavaScript):
HTML:
<!DOCTYPE html>
<html>
<head>
<title>Schulfächer</title>
<meta charset="utf-8"/>
<script src="schulfach.js"></script>
</head>
<body onload="zeigeSchulfaecher();">
<h2>Schulfächer</h2>
<div id="schulfaecher">
</div>
<h2>Liste</h2>
<ul id="schulfaecher_liste">
</ul>
</body>
</html>
Code:
var schulfaecher = ["Mathe", "Deutsch", "Englisch", "Sport"];
function zeigeSchulfaecher() {
document.getElementById("schulfaecher").innerHTML +=
schulfaecher[0] + "<button onclick='fuelleListeMitMathe();'>in Liste einfügen</button><br/>" +
schulfaecher[1] + "<button onclick='fuelleListeMitDeutsch();'>in Liste einfügen</button><br/>" +
schulfaecher[2] + "<button onclick='fuelleListeMitEnglisch();'>in Liste einfügen</button><br/>" +
schulfaecher[3] + "<button onclick='fuelleListeMitSport();'>in Liste einfügen</button><br/>";
}
function fuelleListeMitMathe() {
document.getElementById("schulfaecher_liste").innerHTML += "<li>" + schulfaecher[0] + " " + "<button onclick='loescheFach();'>X</button></li>";
}
function fuelleListeMitDeutsch() {
document.getElementById("schulfaecher_liste").innerHTML += "<li>" + schulfaecher[1] + " " + "<button onclick='loescheFach();'>X</button></li>";
}
function fuelleListeMitEnglisch() {
document.getElementById("schulfaecher_liste").innerHTML += "<li>" + schulfaecher[2] + " " + "<button onclick='loescheFach();'>X</button></li>";
}
function fuelleListeMitSport() {
document.getElementById("schulfaecher_liste").innerHTML += "<li>" + schulfaecher[3] + " " + "<button onclick='loescheFach();'>X</button></li>";
}
function loescheFach() {
document.getElementById("schulfaecher_liste").innerHTML = "";
}
Ich hoffe, dass ich mich hier richtig ausgedrückt habe und dass Ihr mir helfen könnt.
Edit: Ich habe versucht, ein jfiddle für das Script zu erstellen, allerdings wird mir nach "Run" nichts ausgegeben.
Danke Euch,
Matze
Zuletzt bearbeitet: