[js] select element legen (options verwijderen)

Pagina: 1
Acties:

  • r0bert
  • Registratie: September 2001
  • Laatst online: 11-08 16:19
Ik heb nu dit scriptje geschreven om de opties van een bepaalde select te verwijderen.
code:
1
2
3
4
5
6
7
8
9
function fnLeegSelect(argEl) {
    //for (objOption in document.getElementById(argEl).options) {
        //document.getElementById(argEl).options[objOption].removeNode(true);
    //}
    
    for (var iOption = 0; iOption < document.getElementById(argEl).options.length; iOption++) {
        document.getElementById(argEl).options[iOption].removeNode(true);
    }
}

Maar nu laat ie de laatste option staan. Weet iemand hoe ik dit kan verhelpen ? Of een andere goede manier ? (Hele select verwijderen en opnieuw aanmaken is niet de bedoeling)

Verwijderd

Ik kwam ook op een paar rare dingen die ik niet direct kan verklaren in IE.
Maar als je simpelweg alle options van een select met id="id" wilt verwijderen, dan kan dat bijvoorbeeld zo:
code:
1
2
3
4
5
6
7
8
function killAllChildren(id)
{
  baseNode = document.getElementById(id);
  while(baseNode.childNodes.length)
  {
    baseNode.removeChild(baseNode.childNodes[0]);
  }
}

baseNode is uiteraard een verwijzing om het geheel wat in te korten :)

  • r0bert
  • Registratie: September 2001
  • Laatst online: 11-08 16:19
Verwijder je dan niet alles ?
Bijv. language de eventhandlers etc ?

//edit:
het werkt, daar gaat het tot nu toe nog even om..

Verwijderd

code:
1
document.forms['formNaam'].elements['selectNaam'].options.length = 0;