17. maj 2002 - 12:56Der er
10 kommentarer og 1 løsning
Validering på radio-button
Hejsa
Jeg bruger følgende script til at validere om en række tekst-felter er udfyldt:
<script language="javascript"> <!-- function checkForm( frm ){ //var svar = frm.option.value; var navn = frm.navn.value; var adr = frm.adr.value; var post = frm.postal.value; var city = frm.city.value; var mail = frm.mail.value; var err = "";
//(svar.value == 0 )?err+="* Du skal vælge et svar!\n":void(null); (navn.length == 0 )?err+="* Du skal skrive dit navn!\n":void(null); (adr.length == 0 )?err+="* Du skal skrive din adresse!\n":void(null); (post.length == 0 )?err+="* Du skal skrive et postnummer!\n":void(null); (city.length == 0 )?err+="* Du skal skrive en by!\n":void(null); (mail.indexOf("@") < 0 )?err+="* E-mail adresse er ikke gyldig!\n":void(null);
Jeg har også 3 radio-buttons med samme navn men forskellig værdi, som jeg også gerne vil lave en validering på, så man ikke kan submitte formularen uden at have valgt ét af de 3 svarmuligheder.
De fleste virksomheder har efterhånden bevist, at AI virker.
Pilotprojekter leverer resultater. Medarbejdere bruger generative AI-værktøjer. Nye use cases dukker op på tværs af organisationen.
var radioknapper = frm.radioknapnavn; if ( !radioknapper[0].checked && !radioknapper[1].checked && !radioknapper[2].checked ) { // ingen af dem er valgt err += "* du skal vælge en radioknap!\n"; }
hvis du har mange knapper kan det være bedre at bruge en for-løkke :-)
mvh JakobA
Synes godt om
Slettet bruger
17. maj 2002 - 15:05#2
Det er vist imod standarderne ikke at have checked en af dine radio-buttons i forvejen. Og så er dit problem jo løst!
Normalt ville jeg også have sat den ene til at være checked som standard, men da der er tale om en quiz vil vi ikke give brugeren noget foruddefineret valg.
<script language="javascript"> <!-- function checkForm( frm ){ var svar = frm.option; var navn = frm.navn.value; var adr = frm.adr.value; var post = frm.postal.value; var city = frm.city.value; var mail = frm.mail.value; var err = "";
if ( !svar[0].checked && !svar[1].checked && !svar[2].checked ){ err+="* Husk at vælge et svar!\n":void(null); } (navn.length == 0 )?err+="* Du skal skrive dit navn!n":void(null); (adr.length == 0 )?err+="* Du skal skrive din adresse!n":void(null); (post.length == 0 )?err+="* Du skal skrive et postnummer!n":void(null); (city.length == 0 )?err+="* Du skal skrive en by!n":void(null); (mail.indexOf("@") < 0 )?err+="* E-mail adresse er ikke gyldig!n":void(null);
<script language="javascript" type="text/javascript"> function checkRadioButtons(domPath) { for (var i = 0; i < domPath.length; i++) { if (domPath[i].checked) { return true; } } return false; }
function checkForm( frm ){ var svar = frm.option; var navn = frm.navn.value; var adr = frm.adr.value; var post = frm.postal.value; var city = frm.city.value; var mail = frm.mail.value; var err = "";
if (!checkRadioButtons(frm.option)) { err += "* Husk at vælge et svar!\n":void(null); }
(navn.length == 0 )?err+="* Du skal skrive dit navn!\n":void(null); (adr.length == 0 )?err+="* Du skal skrive din adresse!\n":void(null); (post.length == 0 )?err+="* Du skal skrive et postnummer!\n":void(null); (city.length == 0 )?err+="* Du skal skrive en by!\n":void(null); (mail.indexOf("@") < 0 )?err+="* E-mail adresse er ikke gyldig!\n":void(null);
Har lige tjekket det du postede og får en fejl på det.
Den siger "Tegnet ; var ventet"
Mit script er nu sådan her:
<script language="javascript"> <!-- function checkRadioButtons(domPath){ for(var i = 0; i < domPath.length; i++){ if(domPath[i].checked){ return true; } } return false; }
function checkForm( frm ){ var svar = frm.option; var navn = frm.navn.value; var adr = frm.adr.value; var post = frm.postal.value; var city = frm.city.value; var mail = frm.mail.value; var err = "";
if(!checkRadioButtons(frm.option)){ err+="* Husk at vælge et svar!\n":void(null); }
(svar.value == 0 )?err+="* Du skal vælge et svar!\n":void(null); (navn.length == 0 )?err+="* Du skal skrive dit navn!\n":void(null); (adr.length == 0 )?err+="* Du skal skrive din adresse!\n":void(null); (post.length == 0 )?err+="* Du skal skrive et postnummer!\n":void(null); (city.length == 0 )?err+="* Du skal skrive en by!\n":void(null); (mail.indexOf("@") < 0 )?err+="* E-mail adressen er ikke gyldig!\n":void(null);
Laver det med en IF-sætning i den fil jeg sender oplysningerne til istedet for.
Synes godt om
Ny brugerNybegynder
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.