Toon posts:

[JS] Checken of één radiobutton van een groep is geselecteer

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben nog steeds bezig met mijn online enquete. Vooordat ik middels ASP de boel wil gaan wegschrijven in een database. Wil ik eerst controleren of alle gegevens/vragen zijn ingevuld.

Dit doe ik middels een extern javascript bestand. De textfields worden goed gecontroleerd, echter lukt het niet te controleren of één radiobutton van een groep is geselecteerd, bijvoorbeeld bij geslacht.

Zie hier de code van het externe javascript bestand:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
function valideer() {
    var strFout = "";
    if (document.enquete.naam.value == "") {
        strFout += "     - Naam" + "\n";
    } // einde if
        if (document.enquete.mailadres.value == "") {
        strFout += "     - E-mail adres" + "\n";
    } // einde if
    
    
    if (document.enquete.geslacht.checked =="false") {
        strFout += "     - Geslacht" + "\n";
    }
    
    if (strFout != "") {
        alert("Wilt u de volgende velden invullen:\n" + strFout);
        return false;
    } // einde if
    return true;
} // einde valideer


Iemand een idee waar het fout gaat, ik ben al twee uur bezig maar kom er echt niet uit.

  • OkkE
  • Registratie: Oktober 2000
  • Laatst online: 10-11 15:46

OkkE

CSS influencer :+

Ik weet 't niet zeker, maar hier zeggen ze dat je alle radio's langs moet lopen om te zien of er één gechecked is: http://lists.evolt.org/ar...-Mon-20010618/035338.html

Gezocht op "js radio selected" btw. :)

“The best way to get the right answer on the Internet is not to ask a question, it's to post the wrong answer.”
QA Engineer walks into a bar. Orders a beer. Orders 0 beers. Orders 999999999 beers. Orders a lizard. Orders -1 beers.


Verwijderd

Topicstarter
Bedankt dat werkt goed! Nu dacht ik dat dat ook wel voor checkboxen moest werken. Ik heb namelijk chechboxen en daar moet er minimaal 1 van aangevinkt zijn. Helaas werkt dit niet. Hoe kan ik dit het beste aanpakken?

  • Fatamorgana
  • Registratie: Augustus 2001
  • Laatst online: 21-07 01:24

Fatamorgana

Fietsen is gezond.

Checken kun je beter ook serverside doen, dan werkt het altijd, ook bij mensen die de javascript uit hebben staan.

  • OkkE
  • Registratie: Oktober 2000
  • Laatst online: 10-11 15:46

OkkE

CSS influencer :+

Verwijderd schreef op maandag 22 januari 2007 @ 18:28:
Bedankt dat werkt goed! Nu dacht ik dat dat ook wel voor checkboxen moest werken. Ik heb namelijk chechboxen en daar moet er minimaal 1 van aangevinkt zijn. Helaas werkt dit niet. Hoe kan ik dit het beste aanpakken?
Misschien handig om even de code te posten die je tot nu toe hebt. En vertellen wat er precies niet werkt? :) Geeft 'ie een melding? Doet 'ie helemaal niets meer?
Fatamorgana schreef op maandag 22 januari 2007 @ 18:31:
Checken kun je beter ook serverside doen, dan werkt het altijd, ook bij mensen die de javascript uit hebben staan.
Ik ben het met je eens dat je zeker óók serverside moet checken, maar het kan imho helemaal geen kwaad om het dus óók via javascript te doen. Voorkomt onnodige server-requests en scheelt gewoon tijd voor de bezoekers. :)

“The best way to get the right answer on the Internet is not to ask a question, it's to post the wrong answer.”
QA Engineer walks into a bar. Orders a beer. Orders 0 beers. Orders 999999999 beers. Orders a lizard. Orders -1 beers.


  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 19-11 09:49

Bosmonster

*zucht*

Mijn voorkeur gaat wel uit naar een iets flexibelere functie, ipv eentje met direct meldingen erin verwerkt etc.. zoiets dus:

code:
1
2
3
4
5
6
7
8
function getRadioValue (frm, radioName) {
    for (var i=0; i<frm.elements[radioName].length; i++) {
        if (frm.elements[radioName][i].checked) {
            return frm.elements[radioName][i].value;
        }
    }
    return false;
}


Geeft de waarde terug of false, zodat je zelf kunt kijken wat je ermee doet.

En inderdaad, serverside checken is een must, maar extra clientside checks kunnen uiteraard geen kwaad en kunnen een hoop reloads schelen (zowel voor traffic als voor de gebruiker prettig).

[ Voor 17% gewijzigd door Bosmonster op 23-01-2007 11:11 ]


Verwijderd

Topicstarter
Ik heb het al werkend gekregen, kijk maar naar de link eerder in dit topic vermeld. Hartelijk dank voor jullie hulp!
Pagina: 1