Manchmal müssen Sie die Art der Inhalteingabe im Textfeld einschränken. In diesem Abschnitt beschränkt der reguläre Ausdruck das Textfeld, um nur Zahlen, Dezimalpunkte, englische Buchstaben, chinesische Zeichen und andere Codes einzugeben.
Geben Sie beispielsweise eine positive Ganzzahl größer als 0 ein
<Eingabe onkeyUp = "if (this.value.length == 1) {this.value = this.value.replace (/[^1-9]/g, '') {value.Value = this.value.Replace (// d/g, '')}" onafterpaste = "if (this.value.length == 1) {this.value = this.Value.Replace (/[^1-9]/g, '') {else {this.value = this.value.replace (// d/g, '')}">
1. In das Textfeld können nur numerische Codes eingegeben werden (der Dezimalpunkt kann ebenfalls nicht eingegeben werden)
<Eingabe onkeyUp = "this.value = this.value.replace (// d/g, '')" onafterpaste = "this.value = this.value.Replace (// d/g, '')">
2. Geben Sie nur Zahlen ein und können Dezimalpunkte eingeben. Dh nur
<Eingabe onkeyUp = "if (isnan (value)) execcommand ('rückgängig')" onafterpaste = "if (isnan (value)) execcommand ('rückgängig')">
<Eingabename = txt1 onchange = "if (// d/.Test (this.value)) {alert ('nur Zahlen eingeben'); this.value = '';}">
3. Zahlen und Dezimalpunktmethoden zwei
<Eingabe type = text t_value = "" o_value = "" Onkeypress = "if (! this.value.match (/^[/+/-]?/d*?/.?/d*? $/) this.value = this.t_value; sonst this.t_value = this.value; if (this.value.match (/^(?: [/+/-]?/d+(?: /./ d+)?)? $/)) this.o_value = this.value " OnKeyUp = "if (! this.value.match (/^[/+/-]?/d*?/d*?/d*? $/)) this.value = this.t_value; sonst this.t_value = this.value; if (this.value.match (/^(?: [/+/-]?/d+(?: /./ d+)?)? $/)) this.o_value = this.value " onblur = "if (! this.value.match (/^(?: [/+/-]?/d+(?: /./ d+)? | /./ d*?)? $/)) this.value = this.o_value; sonst {if (this.Value .Match (/^/./ D+$/)) this.value = 0+this.value; if (this.value.match (/^/.$/)) this.value = 0; this.o_value = this.value} ">
In separate Funktionen eingekapselt:
Funktion tastePress (ob) {if (! ob.value.match (/^[/+/-]?/d*?/.?/d*? $/)) ob.Value = ob.t_value; sonst ob.t_value = OB.Value; if (ob.value.match (/^(?: [/+/-]?/d+(?: /./ d+)?)? $/)) ob.o_value = ob.Value; sonst ob.t_value = OB.Value; if (ob.Value.match (/^(?: [/+/-]?/d+(?: /./ d+)?)? $/)) ob.o_value = ob.value; } Funktion onblur (OB) {if (! ob.value.match (/^(?: [/+/-]?/d+(?: /./ d+)? | /./ d*?)? Übereinstimmung (/^/./ D+$/)) ob.Value = 0+ob.Value; if (ob.value.match (/^/.$/)) ob.value = 0; ob.o_value = ob.value};}Geben Sie dieses Objekt einfach im Anruf weiter!
4. Geben Sie nur Buchstaben und chinesische Zeichen ein
<input onkeyup="value=value.replace(/[/d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[/d]/g,''))" maxlength=10 name="Numbers">
5. Geben Sie nur englische Buchstaben und Zahlen ein, nicht Chinesisch
<Eingabe onkeyUp = "value = value.replace (/[^/w /.// weibs/ ig, '')">
6. Geben Sie nur Zahlen und Englisch ein
<Eingabe ontkeyUp = "value = value.replace (/[^/d | Chun]/g, '')">
7. Nach dem Dezimalpunkt kann nur bis zu zwei Ziffern vorhanden sein (Zahlen und Chinesen können eingegeben werden), und Buchstaben und Bedienersymbole können nicht eingegeben werden:
<Eingabe onkeypress = "if ((Event.KeyCode <48 || event.KeyCode> 57) && event.KeyCode!
8. Es kann nur bis zu zwei Ziffern nach dem Dezimalpunkt (Zahlen, Buchstaben und Chinesen) sein, und Operator -Symbole können eingegeben werden:
<Eingabe onkeyUp = "this.value = this.value.Replace (/^(/-)*(/d+)/. (/d/d).*$/, '$ $ 2. $ 3')">
Hier geht es um diesen Artikel. Freunde, die es brauchen, können sich darauf beziehen.