Avatar billede fri-hash Nybegynder
11. april 2002 - 15:21 Der er 5 kommentarer og
1 løsning

formelementer / array af checkboxe

Jeg har en form med x antal checkboxe

jeg vil gerne tilgå en checkbox der ligger umiddelbart efter en tilfældig checkbox, dvs ikke ved hjælp af checkboxens name-attribut, men ved hjælp af dens index i array'et af formelementer.

det jeg skal bruge det til er at hvis en checkbox markeres, skal den efterfølgende også markeres

eller bare på en eller anden måde finde det index den aktuelle checkbox har (onclick), så skal jeg nok finde ud af det derfra

Avatar billede mrr Nybegynder
11. april 2002 - 15:38 #1
<form name="theForm">

<script>

function checkNext(index) {
   
    var theForm = document.theForm;
   
    for (var i = 0; i < theForm.theCheckbox.length; i++) {

        if (theForm.theCheckbox[i].checked && index == i)
            if (i+1 < theForm.theCheckbox.length) theForm.theCheckbox[i+1].checked = true;
    }
}

</script>

<input type="checkbox" name="theCheckbox" onclick="checkNext(0);">
<input type="checkbox" name="theCheckbox" onclick="checkNext(1);">
<input type="checkbox" name="theCheckbox" onclick="checkNext(2);">
<input type="checkbox" name="theCheckbox" onclick="checkNext(3);">
<input type="checkbox" name="theCheckbox" onclick="checkNext(4);">

</form>
Avatar billede fri-hash Nybegynder
11. april 2002 - 15:46 #2
der finder du jo ikke index'et - du angiver det som parameter til funktionen

jeg skal bruge en funktion hvor f.eks. den aktuelle checkbox bliver angivet som parameter, og funktionen så finder det index checkbox'en har

noget lignende
onclick="findindex(this);"
Avatar billede fri-hash Nybegynder
11. april 2002 - 15:47 #3
jeg tror det er noget med
document.FORMNAVN.elements[?] eller noget
Avatar billede olebole Juniormester
11. april 2002 - 16:06 #4
<ole>

<script type="text/JavaScript">
function checkNext(elm) {
    var f = elm.form;
    for (i=0; i<f.length; i++) {
        if (elm==f.elements[i] && elm.checked && f.elements[i+1]) {
            if (f.elements[i+1].type=="checkbox") f.elements[i+1].checked = true;
        }
    }
}
</script>

<form>

<input type="checkbox" name="theCheckbox1" onclick="checkNext(this);">
<input type="checkbox" name="theCheckbox2" onclick="checkNext(this);">
<input type="checkbox" name="theCheckbox3" onclick="checkNext(this);">
<input type="checkbox" name="theCheckbox4" onclick="checkNext(this);">
<input type="checkbox" name="theCheckbox5" onclick="checkNext(this);">

</form>

/mvh
</bole>
Avatar billede fri-hash Nybegynder
11. april 2002 - 16:45 #5
thanks olebole
Avatar billede olebole Juniormester
11. april 2002 - 17:23 #6
... hvad gør man ikke gerne for 'Fri Hash'?  *-\
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