Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Hvert felt skal have sin egen if sætning. du kan ikke sådan brokke flere sammen i en.
<script language =\"javaScript>
// du kan ikke teste før brugeren har skrevet noget. // så det bør være en funktion der kaldes når han // prøver at afsende formen function testOplysninger() { var fejl = 0; if ( document.oplysninger.postnr.value.match( /^\\d+$/ ) { // cifre og kun cifre. det er den ok situation. ikke en fejl. } else [ alert(\"Fejl. postnummer må kun indeholde cifre\"); // fejlsituationen fejl = fejl+1; }
if ( ! document.oplysninger.telefon.value.match( /^\\d+$/ ) { // ! betyder NOT alert(\"Fejl. telefonnummer må kun indeholde cifre\"); // fejlsituation fejl = fejl+1; }
if ( ! document.oplysninger.navn.value.match( /^[a-zA-Z]+$/ ) { alert(\"Fejl. navn må kun indeholde bogstaver\"); fejl = fejl+1; }
if ( ! document.oplysninger.adresse.value.match( /^[a-zA-Z]+$/ ) { alert(\"Fejl. adressen må kun indeholde bogstaver\"); fejl = fejl+1; }
if ( ! document.oplysninger.by.value.match( /^[a-zA-Z]+$/ ) { alert(\"Fejl. Bynavne må kun indeholde bogstaver\"); fejl = fejl+1; }
if ( ! document.oplysninger.postnr.value.match( /^\\d{4}$/ ) { alert(\"Fejl. postnummer skal være 4 cifre.\"); fejl = fejl+1; }
if ( ! document.oplysninger.postnr.value.match( /^\\d{8}$/ ) { alert(\"Fejl. telefonnummer skal være 8 cifre.\"); fejl = fejl+1; }
if ( ! document.oplysninger.email.value.match( /^[\\w\\-\\.]+@[\\w\\-\\.]+\\.\\w{2,4}$/ ) { alert(\"Fejl. Emailadressen kan ikke være korrekt.\"); fejl = fejl+1; } if ( fejl == 0 ) { // alt er ok return true; // der bliver nu submitted. } else { // noget er galt. return false; // nu bliver der ikke submitted } }
</script>
i din <form kommando indsætter du en onsubmit= parameter:
Jeg har sat koden ind, og det ser rigtig godt ud, men jeg får en lille fejlmelding, som jeg ikke kan rette, vil du ikke lige se på den!!
<html> <head> <title>Forms</title>
<script language=\"javaScript\">
// du kan ikke teste før brugeren har skrevet noget. // så det bør være en funktion der kaldes når han // prøver at afsende formen function testOplysninger() { var fejl = 0; if ( document.oplysninger.postnr.value.match( /^\\d+$/ )) { // cifre og kun cifre. det er den ok situation. ikke en fejl. } else ( alert(\"Fejl. postnummer må kun indeholde cifre\")); // fejlsituationen fejl = fejl+1; }
if ( ! document.oplysninger.telefon.value.match( /^\\d+$/ )) { // ! betyder NOT alert(\"Fejl. telefonnummer må kun indeholde cifre\"); // fejlsituation fejl = fejl+1; }
if ( ! document.oplysninger.navn.value.match( /^[a-zA-Z]+$/ )) { alert(\"Fejl. navn må kun indeholde bogstaver\"); fejl = fejl+1; }
if ( ! document.oplysninger.adresse.value.match( /^[a-zA-Z]+$/ )) { alert(\"Fejl. adressen må kun indeholde bogstaver\"); fejl = fejl+1; }
if ( ! document.oplysninger.by.value.match( /^[a-zA-Z]+$/ )) { alert(\"Fejl. Bynavne må kun indeholde bogstaver\"); fejl = fejl+1; }
if ( ! document.oplysninger.postnr.value.match( /^\\d{4}$/ )) { alert(\"Fejl. postnummer skal være 4 cifre.\"); fejl = fejl+1; }
if ( ! document.oplysninger.postnr.value.match( /^\\d{8}$/ )) { alert(\"Fejl. telefonnummer skal være 8 cifre.\"); fejl = fejl+1; }
if ( ! document.oplysninger.email.value.match( /^[\\w\\-\\.]+@[\\w\\-\\.]+\\.\\w{2,4}$/ )) { alert(\"Fejl. Emailadressen kan ikke være korrekt.\"); fejl = fejl+1; } if ( fejl == 0 ) { // alt er ok return true; // der bliver nu submitted. } else { // noget er galt. return false; // nu bliver der ikke submitted } }
else { //RETTET. her stod ( istedet for { alert(\"Fejl. postnummer må kun indeholde cifre\"); //RETTET en ) for meget fejl = fejl+1; }
onsubmit skal stå i <form kommandoen og kun der.
check alle feltnavne om de er stavet rigtigt og med de rigtige store sog små bogstaver (by hedder \'By\' i freltets name=\'By\' parameter, men der står by (lille b) i javascriptet: document.oplysninger.by.value.match Navne skal staves hysterisk ens alle steder de bruges.
mvh JakobA
<html> <head> <title>Forms</title>
<script language=\"javaScript\">
// du kan ikke teste før brugeren har skrevet noget. // så det bør være en funktion der kaldes når han // prøver at afsende formen function testOplysninger() { var fejl = 0; if ( document.oplysninger.postnr.value.match( /^\\d+$/ )) { // cifre og kun cifre. det er den ok situation. ikke en fejl. } else { alert(\"Fejl. postnummer må kun indeholde cifre\"); // fejlsituationen fejl = fejl+1; }
if ( ! document.oplysninger.telefon.value.match( /^\\d+$/ )) { // ! betyder NOT alert(\"Fejl. telefonnummer må kun indeholde cifre\"); // fejlsituation fejl = fejl+1; }
if ( ! document.oplysninger.navn.value.match( /^[a-zA-Z]+$/ )) { alert(\"Fejl. navn må kun indeholde bogstaver\"); fejl = fejl+1; }
if ( ! document.oplysninger.adresse.value.match( /^[a-zA-Z]+$/ )) { alert(\"Fejl. adressen må kun indeholde bogstaver\"); fejl = fejl+1; }
if ( ! document.oplysninger.by.value.match( /^[a-zA-Z]+$/ )) { alert(\"Fejl. Bynavne må kun indeholde bogstaver\"); fejl = fejl+1; }
if ( ! document.oplysninger.postnr.value.match( /^\\d{4}$/ )) { alert(\"Fejl. postnummer skal være 4 cifre.\"); fejl = fejl+1; }
if ( ! document.oplysninger.Telefon.value.match( /^\\d{8}$/ )) { alert(\"Fejl. telefonnummer skal være 8 cifre.\"); fejl = fejl+1; }
if ( ! document.oplysninger.email.value.match( /^[\\w\\-\\.]+@[\\w\\-\\.]+\\.\\w{2,4}$/ )) { alert(\"Fejl. Emailadressen kan ikke være korrekt.\"); fejl = fejl+1; }
if ( fejl == 0 ) { // alt er ok return true; // der bliver nu submitted. } else { // noget er galt. return false; // nu bliver der ikke submitted } }
Men der er jo nogle små ting som jeg godt kunne tænke mig! Når der ikke står noget i et felt, skal der stå at feltet mangler at blive indtastet, og ikke vise en fejlmelding om at der fx. er tastet cifre i navnet!!
Er det noget du vil se på, så skal du nok få nogle flere point!!
Du kan teste \'der står ikke noget i dette felt\' med fx:
if ( document.oplysninger.adresse.value.length == 0 ) { alert(\"Fejl. adressen skal udfyldes\"); fejl = fejl+1; }
for så samtidig at udgå den irellevante \'det skal være bogstaver\' kan du lave en mere kompliceret if seting for adressefeltet:
if ( document.oplysninger.adresse.value.length == 0 ) { //dette sker hvis adresse.value.length er lig 0 alert(\"Fejl. adressen skal udfyldes\"); fejl = fejl+1; } else { //dette sker hvis adresse.value.length er større end 0 if ( ! document.oplysninger.adresse.value.match( /^[a-zA-Z]+$/ )) { alert(\"Fejl. adressen må kun indeholde bogstaver\"); fejl = fejl+1; } }
ved sådan at kombinere dine tests sammen kan du undgå der kommer mere end een fejlmeddelelse for hvert felt.
med din onsubmit i <form kommandeen: <form name=\"oplysninger\" onsubmit=\"return testOplysninger()\"> skulle formen IKKE blive slettet når der er en fejl (og returneres false)
Det kan jeg altså ikke forstå? Når jeg får en fejl, så forsvinder det hele!! Gør det ikke det ved dig?
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.