Avatar billede netzie Nybegynder
17. oktober 2005 - 00:24 Der er 7 kommentarer

Check om to form felter er ens (validering med onsubmit)

Hejsa,

Jeg ønsker hjælp til en lille function / script, der skal checke om udfyldelsen/validering af en form - hvor man skal gentage sin email adresse to gange.

Så formålet er ganske enkelt at checke om Tekst felt "EMAIL" er ens med "EMAIL2"

Jeg forstiller mig en lille 'onsubmit' løsning da jeg validerer formen med Dreamweaver 8.0's indbyggede Form validering. Den kan jo selv checke om formatet på feltet er korrekt?
Men måske ville det være smart at funktionen checkede lige efter at brugere havde forladt feltet "EMAIL2" - så ikke valideringen stoppper når man "SUBMIT"'er :)

GRUND: Mange brugere staver deres email forkert eller kender ikke "formatet"...
Avatar billede olebole Juniormester
17. oktober 2005 - 01:21 #1
<ole>

Dine ønsker er selvmodsigende. Hvis der skal checkes på onsubmit, skal der jo ikke checkes, når brugeren forlader feltet ... og omvendt.
Du må nok beslutte dig for hvilken handling, der skal udløse checket  :)

/mvh
</bole>
Avatar billede netzie Nybegynder
17. oktober 2005 - 02:03 #2
Skal jeg vælge... hmmmm så lad os sige den uden "Onsubmit"
Så lader vi Dreamweaver gøre hendes... Og koder løsningen lige efter brugere forlader EMAIL2 feltet :-)

Sorry for not being clear...
Avatar billede roenving Novice
17. oktober 2005 - 04:38 #3
Såvidt jeg husker DWs indbyggede mail-check-funktion, er den forkert/urigtig/checker ikke rigtigt ...

-- prøv at vise den funktion, du bruger, så skal jeg/vi gerne give dig hintet til at det fungerer !-)
Avatar billede netzie Nybegynder
04. juni 2007 - 15:22 #4
Ehhh... Eksempel...
Du kan finde det på alle sider i verden
Opret en bruger profil
Folk indtaster deres email og eller password og disse to sammenlignes med et script for at sikre at de er ens - Det er den funktion jeg er ude efter!
Avatar billede olebole Juniormester
05. juni 2007 - 14:29 #5
function checkFields(f) {
    if (f.txtA.value!=f.txtB.value) {
        alert("Felterne skal være ens")
        return false
    }
    return true
}

- og formen:

<form ........ onsubmit="checkFields(this)">
<input name="txtA" type="text">
<input name="txtB" type="password">
... ... ...
</form>
Avatar billede netzie Nybegynder
05. juni 2007 - 17:00 #6
Hej olebole,

TAK! Fedt... Det virker... men hvordan får jeg functionen til:
1: At vende tilbage til formen og bevarer de data, der var indtastet?
Nu fortsætter den bare sin vandring igennem valideringen og exit'er ud!

2: evt. skifte til rød farve i det felt der er forkert
Smid det lige som svar så jeg kan smide points af til dig!!
Avatar billede roenving Novice
06. juni 2007 - 01:06 #7
1. Nej, den fortsætter ikke bare, hvis du har gjort, som Ole viser (bemærk onsubmit på form-tagget !-)

2. f.eks.

function checkFields(f) {
    if (f.txtA.value!=f.txtB.value) {
        alert("Felterne skal være ens");
        f.txtA.style.color="red";
        f.txtA.focus();
        return false;
    }else f.txtA.style.color="";
    return true
}
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester