Avatar billede whatever Nybegynder
29. maj 2005 - 19:27 Der er 4 kommentarer og
1 løsning

Dynamisk sletning af option groups

Hej

Ud fra et sprogvalg i en select-box, opdateres en anden select-box med data fra et array. Jeg benytter følgende funktion til at oprette optgroup- og option-tags i select-boxen:

function getGroups(frm,lid) {
    if (group[lid]) {
        document.getElementById('productGroupId').options.length = 0;
        var objSelect = document.getElementById('GroupId');
        for (i = 0; i < group[lid].length; i++) {
            exploded = group[lid][i].split("#");
            if (exploded[0] == 1) {
                var objOption = document.createElement("option");
                objOption.value = exploded[1];
                objOption.innerHTML = exploded[2];
                optGroup.appendChild(objOption);
            } else {
                var optGroup = document.createElement('optgroup');
                optGroup.label = exploded[2];
                objSelect.appendChild(optGroup);
            }
        }
    }
}

Evt. eksisterende option-tags slettes først inden de nye indsættes. Men hvordan sletter jeg de eksisterende optgroup-tags fra select-boxen?

Altså alle child-elementer til select-boxen med id'et productGroupId skal slettes. Men hvordan ?
Avatar billede olebole Juniormester
29. maj 2005 - 19:41 #1
<ole>

while (SELECT_ELEMENT.childNodes.length>0) {
    SELECT_ELEMENT.removeChild(SELECT_ELEMENT.firstChild);
}

- hvor SELECT_ELEMENT er en reference til select'en, der skal tømmes

/mvh
</bole>
Avatar billede olebole Juniormester
29. maj 2005 - 19:44 #2
Skal du blot fjerne en enkelt optgroup, kan du gøre sådan:
  SELECT_ELEMENT.removeChild( SELECT_ELEMENT.getElementsByTagName("optgroup")[0] );

- der fjerner den første
Avatar billede olebole Juniormester
29. maj 2005 - 19:45 #3
:)
Avatar billede whatever Nybegynder
29. maj 2005 - 20:00 #4
Lige hvad jeg havde brug for. Tak for hjælpen.
Avatar billede olebole Juniormester
29. maj 2005 - 20:26 #5
- selvtak ... og tak for points  :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester