ik heb onderstaande script geschreven ( erg simpel ;) )
Toch werk het laatste deel van form.algemene_voorwaarden niet.
Als ik dat deel bovenaan plaats werkt het wel.
Ziet iemand wat er fout gaat?


function checkBoeking(form){
	//Check of de algemene voorwaarden gechecked zijn
	
	
	delete message;
	if(form.achternaam.value.length==0){ message = "achternaam ";};
	if(form.rekeningnr.value.length==0){ message = "rekeningnummer ";};
	if(form.geboortedatum.value.length==0){ message = "geboortedatum ";};
	if(form.thuiszorgorganisatie.value.length==0){ message = "thuiszorgorganisatie ";};
	if(form.relatienummer.value.length==0){ message = "relatienummer ";};
	
	if(!(undefined===message)){
		alert("U hebt een of meerdere velden niet ingevuld");
		return false;
	}
	
	if(form.algemene_voorwaarden.checked==true){
		alert("wel aangevinkt");
	}else{
		alert("U heb de algemene voorwaarden nog niet gelezen");
		return false;
	}
	
}
Als message undefined is, gaat hij al niet verder vanwege de 'return false;'. Waarschijnlijk ligt het daaraan.
Uhm maar dan geeft hij eerst het bericht dat een of meerdere velden niet ingevuld zijn. Ik heb alle velden wel degelijk ingevuld, want dat bericht krijg ik niet. ( die werkt overigens wel, want als een van de velden leeg laat krijg ik de melden wel te zien. )
Oke. Dan vind ik het vreemd. Heb je firebug als plug-in van FireFox geïnstalleerd en geactiveerd op de pagina dat je dit script laadt? Anders moet je dat even doen. Firebug kan jou precies vertellen wat er in javascript fout gaat.
Goeie tip, had ik niet aan gedacht.
Helaas vindt firebug geen fouten :S
Raar he?! Snap er niks van ;)
een checkbox controleer je door:


if(document.form.algemene_voorwaarden.checked){
	alert("wel aangevinkt");
}
else{
	alert("U heb de algemene voorwaarden nog niet gelezen");
        return false;
}


Dus voor de duidelijkheid, zonder == true in je if
bedankt voor je reactie.

Ik heb jouw script in mijn script vervangen, maar dit lost helaas niets op.
Zowel jouw script als mijn originele script werken allebei, zolang ze boven aan staan. Staan ze zoals nu onderaan, dan werkt het niet meer.
Dat komt (denk ik ) door een fout ergens halverwege, waardoor het script niet meer verder gaat. Maar ik kan dus niet ontdekken waar...
En als je eens die melding weergeven pas als laatste zet, en die melding bij die check er ook in opneemt?


function checkBoeking(form){
    //Check of de algemene voorwaarden gechecked zijn
    
    
    delete message;
    if(form.achternaam.value.length==0){ message = "achternaam ";};
    if(form.rekeningnr.value.length==0){ message = "rekeningnummer ";};
    if(form.geboortedatum.value.length==0){ message = "geboortedatum ";};
    if(form.thuiszorgorganisatie.value.length==0){ message = "thuiszorgorganisatie ";};
    if(form.relatienummer.value.length==0){ message = "relatienummer ";};
    
    if(!form.algemene_voorwaarden.checked){
        message = "niet aangevinkt";
    }

    if(!(undefined===message)){
        alert("U hebt een of meerdere velden niet ingevuld");
        return false;
    }
    
}
Jep, dat werkt dus wel.
Alleen wil ik graag dat de algemene voorwaarden als aller laatste aan bod komt.
Dus de fout zit m in het "undefined===message"-deel...
Iemand ideeen?
Maak van boven een var message = 'geen'; (in plaats van hem te "deleten") aan en verander
if(!(undefined===message)){
in
if(message != 'geen'){


Probeer dat eens?
jaaaa dat was 't!
Ontzettend bedankt!

Reageren