Regulären Ausdruck getElementById

Muss ich mit reinem Javascript zum ersten mal in einer langen Weile, und haben sich daran gewöhnt, die bequeme Matratze von jQuery, all den wichtigen Dingen entweicht mir.

Brauche ich, um wählen Sie eine Reihe von divs auf regulären Ausdruck. So habe ich Sachen wie diese;

<div id="id_123456_7890123"> .. </div>
<div id="id_123456_1120092"> .. </div>
<div id="id_555222_1200192"> .. </div>
<div id="id_123456_9882311"> .. </div>

Und ich würde brauchen zu erstellen eine Schleife, die geht durch alle divs mit einer id beginnt mit id_123456_. Wie würde ich tun?

Benutzte ich jQuery mit der :regex filter-plugin vor, sondern es bei der Suche, es scheint nicht so, es gibt viel, was ich retten könnte in einer reinen javascript umschreiben.

  • Für alte Internet Explorer-Versionen funktioniert es nicht, aber schauen Sie sich die querySelectorAll() Methode zur Verfügung, die in up-to-date-Browser.
  • Ich mache Fett/Tampermonkey, so ist also völlig irrelevant, und es fühlt sich gut an, Mann. Danke für den Tipp, werde ich prüfen, ob aus
  • Auch ist es erwähnenswert, dass Sie wäre viel besser dran, was die Elemente einer Klasse von "123456".
  • Gewährt, aber da es ein userscript für eine externe Website, der DOM ist aus meinen Händen. Auch dem gleichen Grund, warum ich lieber mit jQuery, aber kann es nicht. Ich überprüfte querySelectorAll(), und es scheint, wie es Listen, die viele Elemente, aber ich verstehe nicht, wie man regexp in es
  • Ah ok, ich sehe. Sie können nicht gut einen regex verwenden, aber ich denke, dass der neue Browser erlauben querySelectorAll("[id^=id_123456]")
  • Zweite Antwort in diesem thread SO hilfreich sein könnten. stackoverflow.com/questions/1938294/...
  • Sie sollten nicht die Auswahl von [id], sondern durch die [class].

Schreibe einen Kommentar