---
title: "E-mail kontroll........"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/51790-e-mail-kontroll"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "asp"
published: "2002-08-30T22:36:00.000Z"
updated: "2002-09-01T19:48:08.000Z"
replies: 11
views: 425
page: 1
pages: 1
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/51790-e-mail-kontroll"
---

# E-mail kontroll........

## #1 — asp, 2002-08-30T22:36Z

Vad är det för fel på denna kod?

```
<html>
<head>
<title>Untitled</title>

<SCRIPT LANGUAGE="JavaScript">
function kollaAdress(adress) {
if (!/^.+@.+\..+$/.test(adress)) {
alert("Adressen stämmer inte.");
return;

}
alert("Adressen är godkänd.");
} 
</SCRIPT>
</head>

<body> 
<form>
<input type="text" onChange="kollaAdress(this.value);">
</form>
</body>

</html>
```

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

## #2 — voigtann1, 2002-08-31T08:00Z

först: Välkommen till **wF**

Behöver inte inputen ett namn för detta?

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

## #3 — asp, 2002-08-31T09:16Z

tack...

det fungerar inte med att sätta namn häller. Någon annan som vet?

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

## #4 — UlfT, 2002-08-31T09:32Z

Med reservation för att jag inte vet hur regexp hanteras i Javascript, jag tycker det ser helt fel ut att förvänta sig att en regexp-sträng skulle kunna ha några metoder i sig själv. Jag hade väntat mig att testen skulle kunna se ut ungefär enligt följande:

```
if (![b]RegExp[/b].test("/^.+@.+\..+$/", adress)) {
alert("Adressen stämmer inte.");
return;
}
```

Det här uttrycket: *"/^.+@.+\\..+$/"* är ju bara en serie tecken. Hur skulle det i sig själv kunna ha några metoder för att testa? Snarare används det nog som ett argument till någon metod för reguljära uttryck.

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

## #5 — asp, 2002-08-31T09:45Z

funegrar inte...

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

## #6 — UlfT, 2002-08-31T11:21Z

> **asp skrev:**
>
> funegrar inte...

Skrev du av precis vad jag hade skrivit? Notera att jag betonade att jag inte visste riktigt hur man gör just i javascript. Jag bara såg att det du skrev, knappast kunde vara riktigt. Nåja, jag kollade lite och har kommit fram till följande:

```
var reg = new RegExp("/^.+@.+\..+$/"); // Ett regexp har skapats

if ( !reg.test(adress) ) { // Nu används en metod i regexpet
alert("Adressen stämmer inte.");
return;
}
```

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

## #7 — asp, 2002-08-31T11:57Z

Jag har provat men det fungerar inte. Kan inte du prova?

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

## #8 — UlfT, 2002-08-31T16:57Z

Nu har jag provat. Först strulade det, men efter att ha ändrat lite på det reguljära uttrycket, fick jag det att ge rätt besked:

```
<html>
<head>
<title>Untitled</title>

<SCRIPT LANGUAGE="JavaScript">
function kollaAdress(adress) {

// Notera att regexp-strängen är något modifierad jämfört med hur du skrev
// I början och slutet slängdes "/" bort,
var reg = new RegExp("^.+@.+\..+$"); // Ett regexp har skapats

if ( !reg.test(adress) ) { // Nu används en metod i regexpet
alert("Adressen stämmer inte.");
return;
}
alert("Adressen är godkänd.");
}
 
</SCRIPT>
</head>

<body> 
<form>
<input type="text" onChange="kollaAdress(this.value);">
</form>
</body>

</html>
```

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

## #9 — voigtann1, 2002-08-31T17:18Z

tänk på att javascript är petig med stora och små bokstäver...

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

## #10 — asp, 2002-09-01T08:56Z

UlfT: Får du det att fungera? Jag får inte det!

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

## #11 — Jojoxx, 2002-09-01T09:22Z

Använd denna prototype annars. Den har även ett bättre regexp.

```
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})$/)
}
```

Då kan din funktion alltså se ut så här:

```
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 kollaAdress(adress) {
	if(adress.isValidEmail){
		alert("Adressen är godkänd.");
	} else {
		alert("Adressen stämmer inte.");
	}
}
```

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

## #12 — UlfT, 2002-09-01T19:48Z

> **asp skrev:**
>
> UlfT: Får du det att fungera? Jag får inte det!

Precis den texten som jag har i mitt inlägg, lade jag i en fil med namnet "mail.asp". Den filen har jag i den hemkatalog som gäller för min IIS-installation. Då skriver jag bara <http://localhost/mail.asp> . Då funkar det.

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

---

Tråden på webben: https://www.webforum.nu/amne/javascript/51790-e-mail-kontroll
