23. december 2003 - 22:50Der er
14 kommentarer og 1 løsning
Ikke blanke felter
-Jeg har lavet en formular som brugeren kan udfylde og derefter klikke på "indsend", hvorefter det indtastede bliver gemt i en database, men hvilken kode skal jeg bruge, hvis jeg ikke vil tillade bestemte af felterne at være blanke?
<script language="JavaScript" type="text/javascript"> <!-- function val(f) { if (f.navn.value.length < 1) { alert("du har glemt at indtaste dit navn"); return false; } if (f.adresse.value.length < 1) { alert("du har glemt at indtaste din adresse"); return false; } if (f.postnummer.value.length < 1) { alert("du har glemt at indtaste dit postnummer"); return false; } if (f.by.value.length < 1) { alert("du har glemt at indtaste din by"); return false; } if (f.telefonnummer.value.length < 1) { alert("du har glemt at indtaste dit telefonnummer"); return false; }
if (emailCheck(f.email.value) == false) { alert('Du har ikke indtastet en gyldig E-mail'); return false; }
if (f.kodeord.value.length < 1) { alert("du har glemt at indtaste dit kodeord"); return false; }
return true; }
//--> </script>
Denne linie skal tilføjes din submitknap. onSubmit='return val(this);'
Så kan du rette den til ved: f.xxxxxxx.value.length
at rette xxxxxxx til navnet på det felt du vil have cheket..
-Jeg har brugt Ztyxx' svar, og det virker da også... Næsten... Problemet er nemlig, at oplysningerne bliver gemt, selvom den skriver, at man skal udfylde feltet...
By the way.. i modsætning til de andres kode, er min kode "dynamisk", det vil sige, at det er lige meget om du ændrer antallet eller navnene på felterne :) Koden er den samme.
Hehe.. jeg har lige fundet en lille fejl i mit script :) Hvis "tilladt" indeholder "email", og et ikke tilladt felt hedder "ema", vil det blive godkendt, da "ema" er en del af "EMAil" :)
Her er den nye udgave.. Felterne der *skal* udfyldes indsættes i skal_udfyldes: var skal_udfyldes = new Array("fornavn", "efternavn", "adresse", "email");
Og igen må du kalde felterne hvad du vil, og du må selvfølgelig slette og rette i felterne, bare du retter i skal_udfyldes. Formen er bare et eksempel.
<SCRIPT text="text/JavaScript"> <!-- function validate() { // checkpoint-boolean-switch-ting: var ok = "ja";
// disse felter må gerne være tomme: var skal_udfyldes = new Array("fornavn", "efternavn", "adresse", "email");
el = document.forms['frminfo'].elements; for(var i=0;i<el.length - 1;i++){
Selvom det ikke har nogen betydning, erstat: // disse felter må gerne være tomme:
med: // disse felter *skal* udfyldes:
Her rettes formnavn og action: <form name="frminfo" action="allowMT.htm" el = document.forms['frminfo'].elements;
Grunden til at jeg bruger formnavn og ikke "0", er at du kan have flere forms på din side. Hvis du bruger "0", skal du rette det til "1" hvis du placerer en form før denne.
Jeg takker for points. - Glædelig jul og godt nytår.
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.