Check af radio-button
Ja, så er jeg tilbage med en fortsættelse til denne tråd:http://www.eksperten.dk/spm/363938
Mit problem er, at jeg skal have valideret om en bruger sætter markering i enten "Ja" eller "Nej" i én af to radio-knapper.
Validerings-scriptet ser således ud:
<script language="JavaScript">
<!-- Hide from older browsers
//Check the enquiry form is filled in correctly
function CheckForm () {
//Initialise variables
var errorMsg = "";
//Check for a first name
if (document.frmEnquiry.Name.value == ""){
errorMsg += "\n\tNavn \t\t- Indtast dit navn\n";
}
//Check for phone
if (document.frmEnquiry.tel.value == ""){
errorMsg += "\n\tTelefonnummer \t- Indtast dit tlf.nr.\n";
}
//tjek antal personer - senge
if (document.frmEnquiry.antalpersoner.value == ""){
errorMsg += "\n\tAntal personer \t- Indtast antal personer (senge)\n";
}
//Check for an e-mail address and that it is valid
if ((document.frmEnquiry.email.value == "") || (document.frmEnquiry.email.value.length > 0 && (document.frmEnquiry.email.value.indexOf("@",0) == - 1 || document.frmEnquiry.email.value.indexOf(".",0) == - 1))) {
errorMsg += "\n\tE-mail adresse \t- Indtast en gyldig e-mail adresse\n";
}
//tjek morgenmad
if (document.frmEnquiry.morgenmad.checked == ""){
errorMsg += "\n\tMorgenmad ønskes \t- Vælg morgenmad (JA eller NEJ)\n";
}
regex =/^(3[01]|0[0-9]|[12]\d)\/(0[1-9]|1[012])\/\d{4}/;
dato1 = "0"
//Check for firstinput
dat = document.frmEnquiry.firstinput.value;
if (dat == ""||!regex.test(dat)){
errorMsg += "\n\tFørste overnatning \t- Indtast første nat i dette format: (DD/MM/ÅÅÅÅ)\n";
}else{
dat = dat.split("/");
var tdate = new Date(parseInt(dat[2]),parseInt(dat[1])-1,parseInt(dat[0]));
if (tdate.getDate()!=parseInt(dat[0])||tdate.getMonth()+1!=parseInt(dat[1])||tdate.getFullYear()!=parseInt(dat[2])){
errorMsg += "\n\tFørste overnatning \t- Ugyldig dato (DD/MM/ÅÅÅÅ)\n";
}else{dato1=tdate.getTime();
var chdato = new Date().getTime()+ (24*60*60*1000);
if (chdato>dato1)
errorMsg += "\n\tFørste overnatning \t- Når du benytter denne formular,\n\t\t\t kan du tidligst bestille to dage frem\n"
};
}
//Check for secondinput
dat = document.frmEnquiry.secondinput.value;
// alert(dat);
if (dat == ""||!regex.test(dat)){
errorMsg += "\n\tSidste overnatning \t- Indtast sidste nat i dette format: (DD/MM/ÅÅÅÅ)\n";
}else{
dat = dat.split("/");
var tdate = new Date(parseInt(dat[2]),parseInt(dat[1])-1,parseInt(dat[0]));
if (tdate.getDate()!=parseInt(dat[0])||tdate.getMonth()+1!=parseInt(dat[1])||tdate.getFullYear()!=parseInt(dat[2])){
errorMsg += "\n\tSidste overnatning \t- Ugyldig dato (DD/MM/ÅÅÅÅ)\n";
}else{
if(dato1>tdate.getTime())
errorMsg += "\n\tSidste overnatning \t- Dato kan ikke være tidligere end første nat\n"
}
}
//If there is aproblem with the form then display an error
if (errorMsg != ""){
msg = "______________________________________________________________\n\n";
msg += "Din besked er ikke blevet sendt da der er problem(er) med formen.\n";
msg += "Venligst ret problemet(erne) og send formen igen.\n";
msg += "______________________________________________________________\n\n";
msg += "Følgende felt(er) skal rettes til: -\n";
errorMsg += alert(msg + errorMsg + "\n\n");
return false;
}
return true;
}
var secondupdate = true;
// -->
</script>
Den part, som jeg ikke kan få til at virke, er dette:
//tjek morgenmad
if (document.frmEnquiry.morgenmad.checked == ""){
errorMsg += "\n\tMorgenmad ønskes \t- Vælg morgenmad (JA eller NEJ)\n";
}
Det er som sagt to radio-knapper, der skal tjekkes på, og enten "Ja" eller "Nej" SKAL vælges.
