---
title: "Email validering ?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/72943-email-validering/page2"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "Pellefant"
published: "2003-04-02T13:21:41.000Z"
updated: "2004-01-26T16:54:04.000Z"
replies: 39
views: 963
page: 2
pages: 2
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/javascript/72943-email-validering"
---

# Email validering ?

_Sida 2 av 2._

## #21 — Dino, 2003-04-25T12:24Z

Kan ju testa denna annars: 

```
\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
```

Permalänk: https://www.webforum.nu/p/1024485

## #22 — Jojoxx, 2003-04-25T14:24Z

Släpper glatt i hågen igenom ex:

"^{@ \_@\_.sv^£r^i¨ge va?"

:)

Permalänk: https://www.webforum.nu/p/1024602

## #23 — Dino, 2003-04-25T15:42Z

Nä, den strängen släpper den inte igenom. :)

Permalänk: https://www.webforum.nu/p/1024664

## #24 — Peter S, 2003-04-25T15:55Z

Strängen tillåter en för stor längd på domänsuffixet  ;) 

 :)

Permalänk: https://www.webforum.nu/p/1024674

## #25 — Dino, 2003-04-25T16:05Z

Kan inte regex så jag skall inte säga något. Tog den ifrån editorn webMatrix. 
Är denna bättre då, det är den som fått högst betyg på <https://www.regexlib.com> för epost.

```
^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$
```

eller denna

```
^([a-zA-Z0-9_\-])+(\.([a-zA-Z0-9_\-])+)*@((\[(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5])))\.(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5])))\.(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5])))\.(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5]))\]))|((([a-zA-Z0-9])+(([\-])+([a-zA-Z0-9])+)*\.)+([a-zA-Z])+(([\-])+([a-zA-Z0-9])+)*))$
```

Permalänk: https://www.webforum.nu/p/1024685

## #26 — Pellefant, 2003-04-25T16:08Z

Intressant detta :)

Permalänk: https://www.webforum.nu/p/1024687

## #27 — Jojoxx, 2003-04-25T22:32Z

> **Dino skrev:**
>
> Nä, den strängen släpper den inte igenom.

Joo, eftersom regexpet saknar ^ och $ i början och slut. ;)

```
^([a-zA-Z0-9_\-])+(\.([a-zA-Z0-9_\-])+)*@((\[(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5])))\.(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5])))\.(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5])))\.(((([0-1])?([0-9])?[0-9])|(2[0-4][0-9])|(2[0-5][0-5]))\]))|((([a-zA-Z0-9])+(([\-])+([a-zA-Z0-9])+)*\.)+([a-zA-Z])+(([\-])+([a-zA-Z0-9])+)*))$
```

Här verkar man ha velat ta med IP, men "johan@127.0.0.1" är inte ok medans "johan@127.0.0.se" är.

Nej, vad säger ni om att skjuta detta åt sidan? :)

Permalänk: https://www.webforum.nu/p/1025095

## #28 — Peter S, 2003-04-26T08:28Z

Låter bra det. Min slutsats blir att inte vara så petig gällande klientsidevalideringen. Med ett serversidespråk dock, är det möjligt att kontrollera huruvida en domän faktiskt existerar och på så sätt hindra adresser som *hjhjhkhk@hjhjhkhk.com* att slippa igenom. För att försvåra det hela ytterligare är det även möjligt att kontakta mailservern för domänen och sedan kontrollera att användarnamnet är korrekt.

 :)

Permalänk: https://www.webforum.nu/p/1025242

## #29 — Pellefant, 2003-04-26T08:41Z

Bara "\_" funkar, så är jag glad :)

Permalänk: https://www.webforum.nu/p/1025247

## #30 — calson, 2004-01-24T16:16Z

Någon som kan hjälpa mig med det här problemet?

```
<html>
<head>

<script language="JavaScript">

String.prototype.isValidEmail = function(){
	return !!this.match(/^([a-zA-Z0-9\_\-]{1}([a-zA-Z0-9\.\-\_]*)[a-zA-Z0-9\_-]{1})@([a-zA-Z0-9]{1}([a-zA-Z0-9\.\-\_]*)[a-zA-Z0-9]{1})\.([a-zA-Z]{2,4})$/)
}

function formvalidation() {
  if (document.yo.email.value.isValidEmail())
  {
    {document.getElementById('errImage').src='gfx/errRed.gif'}
  }
  else
  {
    {document.getElementById('errImage').src='gfx/errGreen.gif'}
  }
}

</script>

</head>
<body>

<img src="gfx/errRed.gif" id="errImage">
<form name="yo">
  <input type="text" name="email" onkeyup="formvalidation()">
  <input type="submit" value="yoyoyo">
</form>

</body>
</html>
```

När jag skrivit in 1 bokstav i epost fältet så blir sätts den gröna bilden in?

Permalänk: https://www.webforum.nu/p/1260333

## #31 — dectgap, 2004-01-24T16:21Z

Testa att ändra till:

```
<html>
<head>

<script language="JavaScript">

String.prototype.isValidEmail = function(){
	return !!this.match(/^([a-zA-Z0-9\_\-]{1}([a-zA-Z0-9\.\-\_]*)[a-zA-Z0-9\_-]{1})@([a-zA-Z0-9]{1}([a-zA-Z0-9\.\-\_]*)[a-zA-Z0-9]{1})\.([a-zA-Z]{2,4})$/)
}

function formvalidation(email) {
  if (!email.isValidEmail())
  {
    document.getElementById('errImage').src='gfx/errRed.gif';
  }
  else
  {
    document.getElementById('errImage').src='gfx/errGreen.gif';
  }
}

</script>

</head>
<body>

<img src="gfx/errRed.gif" id="errImage">
<form>
  <input type="text" name="email" onkeyup="formvalidation(this.value)">
  <input type="submit" value="yoyoyo">
</form>

</body>
</html>
```

Permalänk: https://www.webforum.nu/p/1260335

## #32 — calson, 2004-01-24T16:23Z

då stannar den röda bilden kvar även när man har en korrekt epost adress

Permalänk: https://www.webforum.nu/p/1260336

## #33 — calson, 2004-01-24T16:25Z

Jag glömde att sätta in formvalidation(this.value) :)
Tack för hjälpen dectgap, nu funkar det

Permalänk: https://www.webforum.nu/p/1260337

## #34 — calson, 2004-01-26T15:07Z

Hur gör jag så den kollar om strEpost inte matchar koden nedan?

```
    else if(document.frmAddUser.strEpost.value.match((/^([a-zA-Z0-9\_\-]{1}([a-zA-Z0-9\.\-\_]*)[a-zA-Z0-9\_-]{1})@([a-zA-Z0-9]{1}([a-zA-Z0-9\.\-\_]*)[a-zA-Z0-9]{1})\.([a-zA-Z]{2,4})$/)))
     {alert("Du skrev in en ogiltif epost adress"); return false;}
```

Permalänk: https://www.webforum.nu/p/1261118

## #35 — calson, 2004-01-26T15:12Z

Så svårt va det :L

```
    else if(document.frmAddUser.strEpost.value.match((/^([a-zA-Z0-9\_\-]{1}([a-zA-Z0-9\.\-\_]*)[a-zA-Z0-9\_-]{1})@([a-zA-Z0-9]{1}([a-zA-Z0-9\.\-\_]*)[a-zA-Z0-9]{1})\.([a-zA-Z]{2,4})$/))!=true)
     {alert("Du skrev in en ogiltif epost adress"); return false;}
```

 :)

Permalänk: https://www.webforum.nu/p/1261120

## #36 — calson, 2004-01-26T15:15Z

Nä det funkade inte.
Även när jag skriver i en giltig epost adress kommer alert rutan upp :(

Permalänk: https://www.webforum.nu/p/1261125

## #37 — Jojoxx, 2004-01-26T15:46Z

Använd prototypen. Du behöver inte skriva om regexpet i varje test.

```
String.prototype.isValidEmail = function(){
	return !!this.match(/^([a-zA-Z0-9\_\-]{1}([a-zA-Z0-9\.\-\_]*)[a-zA-Z0-9\_-]{1})@([a-zA-Z0-9]{1}([a-zA-Z0-9\.\-\_]*)[a-zA-Z0-9]{1})\.([a-zA-Z]{2,4})$/)
}
// ...
if(!document.frmAddUser.strEpost.value.isValidEmail()){
   alert("fel fel fel"); return false;
}
```

Permalänk: https://www.webforum.nu/p/1261161

## #38 — calson, 2004-01-26T16:36Z

jag prövade det men det funkade inte.
Det ändå som händer hela checkForm funktionen hoppas över

**onSubmit till frmAddUser**

```
  function checkForm()
   {
    var obj=document.frmAddUser;
    var pn=new personnummer(obj.strY.value.substring(2)+obj.strM.value+obj.strD.value+((obj.strN.value)?"-"+obj.strN.value:""));

    if (document.frmAddUser.strNamn.value.length <1)
     {alert("Ditt namn måste vara minst ett eller fler tecken långt"); return false;}
    else if (document.frmAddUser.strAnv.value.search(/^[^0-9]{1}[0-9A-Öa-ö_ ]+$/) == -1)
     {alert("Du kan inte använda ett användarnamn som använder sig av andra tecken än [a-z, A-Z, 0-9 och _]"); return false;}
    else if(document.frmAddUser.strAnv.value <=3)
     {alert("Ditt användarnamn måste vara 4 eller fler tecken"); return false;}
    else if(document.frmAddUser.strLosen.value <=5)
     {alert("Ditt lösenord måste vara 6 eller fler tecken"); return false;}
    else if(document.frmAddUser.strLosen.value != document.frmAddUser.strLosen2.value)
     {alert("Lösenorden matchade inte varandra"); return false;}
    [b]elseif(!document.frmAddUser.strEpost.value.isValidEmail())
     {alert("Du skrev in en ogiltig epost adress"); return false;}[/b]
    else if(!pn.valid)
     {alert("Du måste fylla i ett fullständigt personnummer"); return false;}
    else if (document.frmAddUser.strStad.value == "blank")
     {alert("Du måste klicka för vilken stad du bor i"); return false;}
    else if (document.frmAddUser.strOrt.value == "blank")
     {alert("Du måste klicka för vilken ort du bor i"); return false;}
    else if(document.frmAddUser.strVillkor.checked!=true)
     {alert("Du måste gofvänna våra villkor"); return false;}
     }
```

Permalänk: https://www.webforum.nu/p/1261192

## #39 — Jojoxx, 2004-01-26T16:45Z

**else if** inte **elseif** :)

Permalänk: https://www.webforum.nu/p/1261197

## #40 — calson, 2004-01-26T16:54Z

ibland är man ju blind :)
antar att jag onte borde jobba med asp medans jag lär min JS :L

Permalänk: https://www.webforum.nu/p/1261201

---

Tråden på webben: https://www.webforum.nu/amne/javascript/72943-email-validering/page2  
Föregående sida: https://www.webforum.nu/amne/javascript/72943-email-validering.md
