Toon posts:

checkbox validatie probleem

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hi mensen,
ik zit met het volgende probleem... en helaas is mn js-kennis niet zo heel denderend..

ik heb meerdere checkboxes, met dezelfde naam, in een form staan:

<input type='checkbox' name='check[]'>

zodoende kan ik dit uitvoeren:

for($i=0; $i<count($check);$i++) { echo $check[$i]; }

ik wil echter vooraf een javascript validatie uitvoeren of er uberhaubt wel iets is gechecked..

daarvoor heb ik de volgende functie gevonden die iedereen wel s gezien heeft waarschijnlijk:

function NoneWithCheck(ss) {
for(var i = 0; i < ss.length; i++) {
if(ss[i].checked) { return false; }
}
return true;
}

function ValidateForm(form)
{
if(NoneWithCheck(form.check)) {
alert('U heeft niets geselecteerd')
return false;
}

return true;

}


dit werkt echter niet door de [] die ik acher check in het form heb staan..
zonder [] werkt de functie prima maar dan werkt de php -loop weer niet..

Heeft iemand een idee hoe ik dit zou kunnen oplossen?

thanks,
Dennis

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 01-05 19:54

Bosmonster

*zucht*

Als je meerdere elementen met dezelfde naam gebruikt verandert je element in een array

dus document.forms['formnaam'].elements['check[]'][0...x]

Wel rekening mee houden dat bij een enkele checkbox (als die gegenereerd worden) je het element direct aanspreekt en niet via de array.

Verder hoort dit in W&G, niet in P&W.

van

code:
1
NoneWithCheck(form.check)


dit maken zou al genoeg moeten zijn

code:
1
NoneWithCheck(form.elements['check[]'])

[ Voor 30% gewijzigd door Bosmonster op 17-08-2005 13:33 ]


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01-05 21:33

.oisyn

Moderator Devschuur®

Demotivational Speaker

Hoi, welkom op GoT :)
Lees ook even de verplichte kost, namelijk De P&W FAQ en De "quickstart"
Daarin staan algemene richtlijnen over het posten in P&W. De Algemene GoT FAQ is natuurlijk ook belangrijk.

Daar vind je oa in dat je code tussen [rml][ code]...[ /code] of [ code=taal]...[ /code] tags kunt plaatsen zodat formatting behouden blijft, en dat javascript bij onze buren in Webdesign & Graphics thuishoort. Ik zal je topic even verhuizen, maar denk daar voortaan zelf aan ;)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Verwijderd

Topicstarter
thanks...

t wordt dus dit:

if(NoneWithCheck(document.forms['form'].elements['check[]'])) {
alert('U heeft niets geselecteerd)
return false;
}

werkt...

sorry voor plaatsing in verkeerde forum

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 21:43

crisp

Devver

Pixelated

Bosmonster schreef op woensdag 17 augustus 2005 @ 13:30:
Wel rekening mee houden dat bij een enkele checkbox (als die gegenereerd worden) je het element direct aanspreekt en niet via de array.
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function NoneWithCheck(ss)
{
    var i = ss.length;
    if (i)
    {
        while (i--)
            if (ss[i].checked) return false;
    }
    else
    {
        return !ss.checked;
    }

    return true;
}

;)

Intentionally left blank


  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 01-05 19:54

Bosmonster

*zucht*

crisp schreef op woensdag 17 augustus 2005 @ 13:41:
[...]

JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function NoneWithCheck(ss)
{
    var i = ss.length;
    if (i)
    {
        while (i--)
            if (ss[i].checked) return false;
    }
    else
    {
        return !ss.checked;
    }

    return true;
}

;)
Yeah dat zeg ik :P Dat je dat dus wel moet doen ;)

Je vergeet dat soort dingen wel eens en dan belt de klant ineens dat er een foutmelding in zit en blijkt dat je nooit getest hebt met maar 1 gegenereerde checkbox O-)
Pagina: 1