Avatar billede jeppe81 Nybegynder
02. december 2004 - 10:43 Der er 13 kommentarer og
1 løsning

tjek på flere forskellige tegn

hej hvis jeg ikke vil have tegn som ' og % i et tekst felt i en form hvad skal jeg så gøre?
Avatar billede ldanielsen Nybegynder
02. december 2004 - 10:59 #1
Du skal lave en validering:

function doValidate(){
  var myForm = document.formNavn;
  if (myForm.feltNavn.value.indexOf("'") >= 0){alert("Du kan ikke bruge \"'\" i feltet"); return (false);}
Avatar billede ldanielsen Nybegynder
02. december 2004 - 11:00 #2
Sorry, skulle ikke have sendt det endnu, her komme det igen:

Du skal lave en validering:

function doValidate(){
  var myForm = document.formNavn;
  if (myForm.feltNavn.value.indexOf("'") >= 0){alert("Du kan ikke bruge \"'\" i feltet"); return (false);}
  return true;
  }


og i formen skriver du:

<form name="formNavn" ... ... onSubmit="return doValidate();">
Avatar billede jeppe81 Nybegynder
02. december 2004 - 11:25 #3
Kan du ikke lige (bare så jeg forstår det helt) skrive hvad der skal stå hvis jeg vil tjekke for % ' og $. og hvad hvis jeg allerede har et andet tjek kørende med onsubmit, kan man godt have flere af dem eller?

mvh
jeppe
Avatar billede roenving Novice
02. december 2004 - 13:22 #4
Du kan jo bare sætte et check onblur på feltet og tilføje det til din valideringsfunktion !-)

-- i feltet:

<input ... onblur="if(!!this.value.match(/['\$%]/)){alert('Du må ikke indsætte specialtegn');this.select();this.focus();}">

-- og i din validering (afhængig af din valideringstype !-) f.eks. indsætte:

  if(!!f.FELTNAVN.value.match(/['\$%]/)){
    alert('Du må ikke indsætte specialtegn');
    f.FELTNAVN.select();
    f.FELTNAVN.focus();
    return false;
  }
Avatar billede ldanielsen Nybegynder
02. december 2004 - 14:21 #5
Hvis du synes at Regular Expressions er lidt for fremmedartet, så se her:

function doValidate(){
  var myForm = document.formNavn;
  if (myForm.feltNavn.value.indexOf("'") >= 0){alert("Du kan ikke bruge \"'\" i feltet"); return (false);}
  if (myForm.feltNavn.value.indexOf("%") >= 0){alert("Du kan ikke bruge \"%\" i feltet"); return (false);}
  if (myForm.feltNavn.value.indexOf("$") >= 0){alert("Du kan ikke bruge \"$\" i feltet"); return (false);}
  return true;
  }

Tilføj bare en ny linie for hvert tegn, skriv tegnet i
...value.indexOf("$") ...

og i alert'en:
... ikke bruge \"$\" i feltet ...


I alerten er tegnet omsluttet af \"
Det er anførselstegn der er escape'ede. Der er som regel en måde at tillade tegn der ellers er ulovlige.

Fx. vil du forbyde ', og det er måske fordi du skal inserte teksten i en database. Så kan du bare erstatte ' med '' (Erstatte én med to plinger), så går det alligevel.
Avatar billede roenving Novice
02. december 2004 - 15:56 #6
-- det sidste kommer an på hvilket system, som anvendes server-side !-)
Avatar billede jeppe81 Nybegynder
03. december 2004 - 08:33 #7
hmm er lidt i tvivl om det her hvad er min validering, er det bare i <script> ?
Avatar billede roenving Novice
05. december 2004 - 07:16 #8
Kan du ikke linke til det foreløbige, for så kunne det være nemmere at give dig de gode råd ?-)
Avatar billede jeppe81 Nybegynder
08. december 2004 - 09:25 #9
Har fået det til at virke nu, mange tak for hjælpen
Avatar billede ldanielsen Nybegynder
08. december 2004 - 11:51 #10
Selv tak. Men vi fik aldrig point?
Avatar billede roenving Novice
10. december 2004 - 13:07 #11
,-(
Avatar billede jeppe81 Nybegynder
13. december 2004 - 10:40 #12
ldanielsen, skal jeg oprette et nyt sporgsmål så du kan få point?
Avatar billede ldanielsen Nybegynder
13. december 2004 - 10:55 #13
Nej pyt med det.

Men du ved vel godt hvordan det er meningen at det skal fungere, ikke?
Avatar billede jeppe81 Nybegynder
13. december 2004 - 13:29 #14
ja det var bare lige min fejl der sry
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
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

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