javascript regex zu verbieten, alle Sonderzeichen
Hier ist ein Turnschuh, start - http://jsfiddle.net/zuVpx/1/
Javascript-code:
<script>
function validate(e) {
var regex = new RegExp("[a-zA-Z0-9]");
var key = e.keyCode || e.which;
key = String.fromCharCode(key);
if(!regex.test(key)) {
e.returnValue = false;
if(e.preventDefault) {
e.preventDefault();
}
}
}
</script>
HTML-code:
<input type="text" onkeypress="validate(event)" />
Möchte ich nur Buchstaben und zahlen. Tasten wie backspace, löschen, capslock-und Pfeiltasten usw funktionieren sollte.
Vielen Dank im Voraus.
werfen Sie einen Blick auf dieses stackoverflow.com/questions/995183/...
InformationsquelleAutor Ashwin | 2013-03-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hinzufügen eines
id
auf die Eingabe (z.B. "validate") und verwenden:JSFiddle
Wirklich? Es muss eine alte version von Mozilla dann. Funktioniert in Firefox 19.0 hier, noch im IE8. Versuchen Sie es mit
document.getElementById('validate')
statt `document.querySelector', oder aktualisieren Sie Ihren browser.Ich habe das problem identifiziert. Das problem ist, keyCode -> 35 bis 40 wiederholen sich-keys (home, end, etc.) für zB # und 'Ende' sind mit code 35. Wenigstens hier in meinem Mozilla-16 ;).
Ich sehe. Der code angepasst, jetzt nach Hause/beenden, Links/rechts, entf/backspace funktioniert auch in FF/Mozilla.
nun ist es nicht erlaubt
#$%'.
InformationsquelleAutor KooiInc
Versuchen
Es gibt true zurück, falls eine übereinstimmung vorhanden ist.
InformationsquelleAutor WillyMilimo
Wie wäre es einfach mit einer zusätzlichen if-Klausel? So etwas wie...
So...
InformationsquelleAutor Dve
Um das problem zu überwinden, zum Beispiel die Pfeil-Links-Taste führt zum selben
key
Wert als die%
Schlüssel, den Sie verwenden konnten,Jedes druckbare Zeichen erzeugen soll, einen nicht-null -
e.which
unde.charCode
Wert.Sehen JavaScript-Wahnsinn: Tastatur-Ereignisse.
jsFiddle.
Den oben nimmt Räume gelten - wenn nicht, entfernen Sie einfach die
\s
aus dem negierten Zeichenklasse.InformationsquelleAutor MikeM