Hoe kan ik bepaalde tekens "verbieden" in een textbox?

Status
Niet open voor verdere reacties.

empede

Gebruiker
Lid geworden
17 jan 2007
Berichten
17
Ik wil een veld maken waarop de invoer gecontroleerd wordt.
Dus: A-Z en a-z en 0-9 en de - wil ik toelaten, maar alle andere tekens:_~!@#$%^ en de spatie wil ik niet toelaten.
Hoe krijg ik dit voor elkaar?

Wat ik tot nu toe heb is:
var emailStr = form.EigenCode.value;
var emailPat = /\-|[A-Za-z0-9]/;

Maar dat werkt niet :(
Misschien heeft iemand al een kant en klare oplossing?
Ik kan me indenken dat dit vaker voorkomt.

Groeten en alvast mijn eeuwige dank ;)
 
Het is idd al eens voorgekomen: http://www.helpmij.nl/forum/showthread.php?t=295326 :)

Met een kleine aanpassing:
PHP:
<script type="text/javascript">
 // Egel 070614 ;)
 function checkExp(e,r) {
  while (!r.test(e.value) && e.value.length > 0) e.value = e.value.substring(0,e.value.length - 1);
  };
</script>

1 - 3 cijfers . en 0 of 5:
<input type="text" size="6" value="" onkeyup="checkExp(this,/^\d{1,3}(\.|\.[05])?$/)">

1 - 5 cijfers:
<input type="text" size="6" value="" onkeyup="checkExp(this,/^\d{1,5}$/)">

1 of meer cijfers:
<input type="text" size="12" value="" onkeyup="checkExp(this,/^\d+$/)">

<br><br>

cijfers, letters en hypen:
<input type="text" size="24" value="" onkeyup="checkExp(this,/^[\-A-Za-z\d]+$/)">
De laatste is voor cijfers, letters en -. Als je een verkeerd teken typt wordt dat weer verwijdert.

Ik het \d (digit) gebruikt ipv 0-9. Als je een maximaal aantal tekens wilt (bv. 20) kun je de + (1 of meer) vervangen door {1,20}


Vr.Gr. Egel.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan