Opgelost

Hallo allemaal,

Ik heb een pagina met 15 div's die op deze manier zijn opgemaakt:
<div id="reacties_*ID*"></div>

Dus bijvoorbeeld zo :
<div id="reacties_4282">Tekst</div>
<div id="reacties_5825">Tekst</div>

Ik wil met een javascript functie al deze div's leegmaken, zonder dat ik weet wat het ID is.

Dat heb ik op deze manier geprobeerd :


var leegmaken = document.getElementsByRegex('^reacties_.*');
for(i in leegmaken)
{
$(leegmaken[i]).html('');
}


Hij loopt al vast op de eerste regel. Heeft iemand een ideetje hoe ik dit op moet lossen ?

Alvast bedankt!
Ricardo

[size=xsmall]Toevoeging op 22/10/2010 17:31:42:[/size]

Laat maar, ik was vergeten de functie getelementsbyregex toe te voegen, domdomdom
Ik snap het niet, gebruik je nou jQuery?

Zo ja, waarom gebruik je Regex? je hebt een hele mooie each() functie ervoor.

Zo niet, als het variabel "leegmaken" een Array is kun je delete gebruiken.
In dit geval zou het zo ongeveer eruit zien:
delete leegmaken[ignore][i][/ignore];
De functie getElementsByRegex bestaat volgens mij ook niet.

Je zou zelf zo'n functie kunnen maken.

Wat ik zelf persoonlijk zou doen:

   var divs = document.getElementsByTagName('div'); // Pak ALLE divs.
   for (key in divs) {
       // Filter de goede divs uit de stapel.
       if (divs[key].id !== undefined && divs[key].id.match(/^reacties_[0-9]+/)) {
           // Hier zijn je divs.
       }
   }


Wat je ook kunt doen. Is gewoon controleren of bij het id de eerste 9 tekens overeen komen met 'reacties_'. Je hoeft namelijk niet het getal erachter te weten, dus is een regex misschien wel te veel van het goede.

Reageren