> Tak for hjælpen og forklaringen, men jeg har lidt problemer med
hvordan
> koden skal se ud (hvor der skal rettes i koden).
>
> Jeg er helt ny i javascript, men jeg kan godt forstå forklaringen
(tror
> jeg).
>
> Skal koden se ud lidt alla det her:?
>
>
> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">
> <html xmlns="
http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
> <head>
> </head>
> <body>
>
> <script type="text/javascript">
> <!-- Start
>
> function validering()
> {
>
> re = new RegExp("[æøå]","i");
>
> error = 0;
> if((document.forms[0].userfile.value=='') && (error==0))
> {
> alert('Tekstfeltet skal udfyldes!');
> document.forms[0].userfile.focus();
> error = 1;
> }
>
> if (re.test(document.forms[0].userfile.value)) {
> // fejl
> }
>
> // Slut -->
> </script>
>
>
> Er jeg langt ude i skoven?
Nej, du er ikke langt ude i skoven.
Prøv at se her:
<script type="text/javascript">
function validering() {
re = new RegExp("[æøå]","i");
error = 0;
elem = document.forms[0].userfile;
if (elem.value=='') {
alert('Tekstfeltet skal udfyldes!');
elem.focus();
error = 1;
}
else if (re.test(elem.value)) {
error = 1;
elem.focus();
alert('Der er fundet ugyldige tegn i tekstfeltet!\n\nFjern dem
venligst!');
}
return (!error);
}
</script>
<form action="side2.asp" onSubmit="return validering();">
<input type="text" name="userfile" value="Ingen æ'er, ø'er eller
å'er!!!">
<input type="submit">
</form>
Jeg har indsat leddet elem = document.forms[0].userfile; dels for at
gøre det nemmere at tilgå objektet (html-elementet), og dels muliggør at
gennemløbe de enkelte elementer i formularen gennem en løkke.
F.eks.
form = document.forms[0]; // evt. hentet som funktionsparameter
for (j in form) {
elem = form.elements[j];
if (elem.type == "text") {
// valideringen for et tekstfelt - som vist ovenfor
}
}
Grunden til, jeg har skrevet "return (!error);" er, at error - såfremt
der er fejl - indholder værdien 1, som også er den booleske værdi for
true.
Vi vil gerne have, at formularen ikke bliver sendt, hvis der er fejl, og
det kan vi gøre ved at give formularens onSubmit-event en return-værdi
der er "false".
Hvis der ingen fejl er, er error = 0 - ellers er error = 1.
Hvis vi så "vender det om", altså gør sand til falsk, og falsk til sand,
får vi det ønskede resultat.
Og det gøres ved hjælp af vores udråbstegn.
Det skulle vidst være det, tror jeg!
Er der mere, du er i tvivl om, så bare spørg!
MVH Jonas (aka Juke)
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! =>
http://www.html.dk/tutorials