Class direkt ansprechen - Druckversion +- Javascript-forum (https://javascript-forum.de) +-- Forum: Entwicklung (https://javascript-forum.de/forumdisplay.php?fid=4) +--- Forum: Javascript (https://javascript-forum.de/forumdisplay.php?fid=6) +--- Thema: Class direkt ansprechen (/showthread.php?tid=2455) |
Class direkt ansprechen - Oly - 01.07.2023 Hallo zusammen, ist es möglich aus Tabelleneinträgen Werte zu bekommen anhand der Classeneinträge? z.B., ich habe ein Div in dem mehrere Tabellen sind, die einzellnen Tabelleneinträge besitzen alle den selben ClassName. Die Anzahl der gesammten Einträge kann ich ermitteln. Ist es jetzt möglich, das ich den TextContent, sagen wir mal des 5. Eintrages der Class bekomme? RE: Class direkt ansprechen - AndreasB - 02.07.2023 Hallo @"Oly" Wenn ich dich richtig verstehe suchst du etwas wie das: Code: document.querySelectorAll('.myClassName')[4] Wenn du etwas anderes meinst, solltest du dein HTML code mal posten, und nochmal beschreiben, was du erreichen möchtest. RE: Class direkt ansprechen - Oly - 03.07.2023 Moin Andreas, ja im Prinzip könnte es klappen wenn es laufen würde. Im Moment lese ich die Anzahl wie folgt aus Code: console.log(document.querySelector("#registerable-tasks").getElementsByClassName("task-id danger").length); Folge ich deinem Beispiel, Code: let num = document.querySelectorAll(".task-id danger"); ich habe mehrere ähnliche Einträge wie diese Code: <tr class="task-id danger" data-id="38451632" role="row"></tr> danke für den Hinweis, habe es jetzt so lösen können Code: let num = document.querySelector("#registerable-tasks").getElementsByClassName("task-id danger"); RE: Class direkt ansprechen - AndreasB - 03.07.2023 Hallo Oly, Schön, dass du die Lösung selber gefunden hast. Nochmal als Tipp: dein Aufruf von Code: document.querySelectorAll(".task-id danger"); Dieser Selector sucht ein Element mit dem Tag-Namen danger innerhalb eines Elements mit der Klasse task-id. also so was: Code: <div class="task-id"> Wenn du ein Element selektieren möchtetst, dass sowohl die Klasse task-id als auch die Klasse danger hat muss das so aussehen (wie auch in CSS): Code: document.querySelectorAll(".task-id.danger"); RE: Class direkt ansprechen - rzscout - 05.07.2023 Hi Oly, Mit der querySelectorAll-Methode und der forEach-Methode lassen sich ein Objekt-Element-Array erstellen und durchlaufen. Dabei kann man bei den Durchläüfen in der forEach-Methode sowohl das aktuelle item(Element) als auch den Index zurück geben lassen. Das ganze sieht dann so aus: Code: document.querySelectorAll('.meineKlasse').forEach((item, index)=>{ Ich kann dir die Methoden nur empfehlen, da damit nicht nur der fünfte Wert sondern auch andere Werte vegleichen lassen in einer Funktion. Viele Grüße rzscout |