Avatar billede gatez Nybegynder
14. januar 2005 - 21:21 Der er 13 kommentarer og
1 løsning

Ingen ulovlige input tegn

Hejsa,

Hvordan laver jeg et form input som kun må bestå af tegnene 1-9, a-z samt "-" (bindestreg) ?

Det skal laves i en onkeypress="" sådan at de "ulovlige" tegn ikke kan skrives.

- Gatez
Avatar billede gatez Nybegynder
14. januar 2005 - 21:47 #1
Okay... er der så andre måder man kan validere et input feldt på så man kun kan indtaste overnævnte tegn ?
Avatar billede moocher Nybegynder
14. januar 2005 - 21:48 #2
$mystring = "abc....123...-"



$pos = strrpos($mystring, "b");
if ($pos === false) { // note: three equal signs
  // not found...
}
Avatar billede morteeart Nybegynder
14. januar 2005 - 21:49 #3
javascripter ikke genialt til validering af data, men du skal ud i en regulær expression
/([1-9a-z-]+)/
Jeg ved ikke hvordan du bruger den i javascript, men i php er det f.eks. nemt nok :)
Avatar billede moocher Nybegynder
14. januar 2005 - 21:50 #4
Hvis din php version er ældre end 4.0b3, skal den se anderledes ud... skriv så skriver jeg hvordan
Avatar billede moocher Nybegynder
14. januar 2005 - 21:51 #5
sorry du ville have javascrip.. jeg sov lige :D
Avatar billede morteeart Nybegynder
14. januar 2005 - 22:02 #6
moocher i php er en preg_match("/([1-9a-z-]+)/",$mystring); smarterer.
Avatar billede gatez Nybegynder
14. januar 2005 - 22:09 #7
Jeg bruger kun javascript og ASP, så ingen php tak ;)
Avatar billede gatez Nybegynder
14. januar 2005 - 22:10 #8
Valideringen må også gerne være lavet i ASP, det behøver ikke at være javascript.
Avatar billede gammelhat Nybegynder
14. januar 2005 - 22:16 #10
prøv denne

<script>
function checkinput(f, e){
    var key;
    var keychar;

    if(window.event)
      key = window.event.keyCode;
    else if(e)
      key = e.which;

    if(key == 8) return true; // backspace

    keychar = String.fromCharCode(key);

    re = /^[1-9a-z-]*$/;
    return re.test(keychar);
}
</script>
<form>
<input type="text" onkeypress="return checkinput(this, event)">
</form>
Avatar billede gatez Nybegynder
14. januar 2005 - 22:22 #11
--> gammelhat
Takker smid et svar ;)
Avatar billede roenving Novice
16. januar 2005 - 15:20 #12
Sådan f.eks. (virker vist kun i IE, men den kan godt laves til alle browsere !-)

<input type="text" name="minTekst" onkeydown="return /[1-9a-z-]/ij.test(String.fromCharCode(event.keyCode));">
Avatar billede roenving Novice
16. januar 2005 - 15:21 #13
Hov, der var kommet et tegn med fra min editor:

<input type="text" name="minTekst" onkeydown="return /[1-9a-z-]/i.test(String.fromCharCode(event.keyCode));">
Avatar billede gatez Nybegynder
03. februar 2005 - 21:12 #14
Der kom intet svar ;)
Så jeg har i mellem tiden lavet det hele i ASP...
Lukker
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