/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Javascript til validering af brugeroplysni~
Fra : Michael Tillgaard


Dato : 12-10-04 15:52

Jeg har på et tidspunkt fundet nedenstående javascript. Jeg
bruger det når mine brugere skal oprette sig selv i en form.
Hvordan undgår jeg at man kan trykke på mellemrumstasten som
gyldigt brugernavn og fulde navn?

<script language="javascript" type="text/javascript">
function validate(f){

if(!f.email.value.match(/^[\w]{1}[\w\.\-]*@[a-z0-9æøåäöüé]{1}[a-z
0-9\-\.æøåäöüé]*\.[a-z]{2,6}$/i)){
f.email.focus();
f.email.select();
alert("Der er en fejl i indtastningen af: email");
return false;
}
   if(f.navn.value==""){
f.navn.focus();
alert("Du skal indtaste et brugernavn");
return false;
}
if(f.fuldenavn.value==""){
f.fuldenavn.focus();
alert("Du skal indtaste dit fulde navn");
return false;
}
return true;
}
</script>   

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Jens Gyldenkærne Cla~ (13-10-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 13-10-04 09:48

Michael Tillgaard skrev:

> Hvordan undgår jeg at man kan trykke på mellemrumstasten som
> gyldigt brugernavn og fulde navn?

Du kan fx bruge regex lige som det allerede sker for mailvalideringen.

> <script language="javascript" type="text/javascript">

Note: language-parameteren er forældet - det er nok med type.


>    if(f.navn.value==""){

if(!f.navn.value.match(/\w{3,}/){
   // Giv besked om for kort navn
}

Ovenstående regex kræver tre "word-chars" - dvs. almindelige bogstaver
for at virke. Man skal måske udvide med æøåÆØÅ - ellers vil "Åge" måske
ikke komme igennem.


--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Michael Tillgaard (14-10-2004)
Kommentar
Fra : Michael Tillgaard


Dato : 14-10-04 15:03

Jens GyldenkærneClausen wrote in dk.edb.internet.webdesign.clientside:
> Michael Tillgaard skrev:
>
> > Hvordan undgår jeg at man kan trykke på mellemrumstasten som
> > gyldigt brugernavn og fulde navn?
>
> >    if(f.navn.value==""){
>
> if(!f.navn.value.match(/\w{3,}/){
>    // Giv besked om for kort navn
> }
Fik følgende til at virke:
   if(!f.navn.value.match(/^[\w]{3}/)){
>
> Ovenstående regex kræver tre "word-chars" - dvs. almindelige bogstaver
> for at virke. Man skal måske udvide med æøåÆØÅ - ellers vil "Åge" måske
> ikke komme igennem.
>
Jeg bliver desværre nødt til at spørge:
Hvordan tillader du æøå?

M.v.h. og tak for hjælpen
Michael

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jens Gyldenkærne Cla~ (14-10-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 14-10-04 15:58

Michael Tillgaard skrev:

> Jeg bliver desværre nødt til at spørge:
> Hvordan tillader du æøå?

Meget simpelt:

   /[\wæøåÆØÅ]{3}/

Klammerne ([]) angiver en gruppe tegn hvor hvert tegn er gyldigt som
match. \w står stadig for en "word char" - der måske allerede inkluderer
æøå, men også kun måske. Ved eksplicit at skrive æøåÆØÅ ind i gruppen er
man sikker på at de tegn også er med.

Sidebemærkning - man kan bruge /i til at angive at søgningen ikke skal
være versalfølsom (case insensitive) - så i princippet kan man skrive
/[\wæøå]/i - og så skulle regex-parseren også tage ÆØÅ med. Men man skal
nok ikke regne med at regex-parseren ved at ÆØÅ og æøå er beslægtede
tegn hvis den ikke ved at det også er word chars - derfor vil jeg
anbefale at man skriver både de store og små varianter ind.


--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Jens Peter Karlsen (15-10-2004)
Kommentar
Fra : Jens Peter Karlsen


Dato : 15-10-04 00:10

Husk at Bo og Ib er helt legale og udbredte navne. Der findes et par
andre knap så udbredte muligheder.
Så man burde nok overveje at tillade kun to "word-chars" hvis det er
legale fornavne man søger.

Regards Jens Peter Karlsen. Microsoft MVP - Frontpage.


On Wed, 13 Oct 2004 10:48:09 +0200, Jens Gyldenkærne Clausen
<jens@gyros.invalid> wrote:

>Ovenstående regex kræver tre "word-chars" - dvs. almindelige bogstaver
>for at virke. Man skal måske udvide med æøåÆØÅ - ellers vil "Åge" måske
>ikke komme igennem.


Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste