Terkadang Anda perlu membatasi jenis input konten di kotak teks. Di bagian ini, ekspresi reguler membatasi kotak teks untuk hanya memasukkan angka, titik desimal, huruf bahasa Inggris, karakter Cina dan kode lainnya.
Misalnya, masukkan bilangan bulat positif lebih besar dari 0
<input onkeyup = "if (this.value.length == 1) {this.value = this.value.replace (/[^1-9]/g, '')} else {this.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. Hanya kode numerik yang dapat dimasukkan dalam kotak teks (titik desimal juga tidak dapat dimasukkan)
<input onkeyup = "this.value = this.value.replace (// d/g, '')" onAfterpaste = "this.value = this.value.replace (// d/g, '')">
2. Hanya masukkan angka dan dapat memasukkan titik desimal. Yaitu saja
<input onkeyup = "if (isnan (value)) execCommand ('undo')" onafterpaste = "if (isnan (value)) execCommand ('undo')">
<input name = txt1 onchange = "if (// d/.test (this.value)) {waspada ('Hanya masukkan angka'); this.value = '';}">
3. Angka dan titik desimal Metode dua
<input type = text t_value = "" o_value = "" OnkeyPress = "if (! this.value.match (/^[/+/-]?/d*?/.?/d*? $/)) this.value = this.t_value; else 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; else 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; else {if (ini.value .match (/^/./ d+$/)) this.value = 0+this.value; if (this.value.match (/^/.$/)) this.value = 0; this.o_value = this.value} ">
Dienkapsulasi ke dalam fungsi terpisah:
function keypress (ob) {if (! ob.value.match (/^[/+/-]?/d*?/.?/d*? $/)) ob.value = ob.t_value; lain ob.t_value = ob.value; if (ob.value.match (/^(?: [/+/-]?/d+(?: /./ d+)?)? $/)) ob.o_value = ob.value;} function keyup (ob) {if (! Ob.Value.Match (/^[//+/-]?/D*? lain ob.t_value = ob.value; if (ob.value.match (/^(?: [/+/-]?/d+(?: /./ d+)?)? $/)) ob.o_value = ob.value; } Fungsi Onblur (OB) {if (! Ob.Value.Match (/^(?: [/+/-]?/d+(?: /./ d+)? | /./ d*?)? $/)) ob.value = ob.o_value; else {if (ob.value. Cocokkan (/^/./ d+$/)) ob.value = 0+ob.value; if (ob.value.match (/^/.$/)) ob.value = 0; ob.o_value = ob.value};}Lewati saja objek ini dalam panggilan!
4. Hanya masukkan huruf dan karakter Cina
<input onkeyup = "value = value.replace (/[/d]/g, '')" Onbeforepaste = "clipboarddata.setData ('text', clipboarddata.getData ('teks'). Ganti (//D]/g, '))" maxlength = 10 name = "angkanya">
5. Hanya masukkan surat dan angka bahasa Inggris, bukan bahasa Cina
<input onkeyup = "value = value.replace (/[^/w /.// media/ ig, '')">
6. Hanya masukkan angka dan bahasa Inggris
<input onkeyup = "value = value.replace (/[^/d | chun]/g, '')">
7. Hanya ada hingga dua digit setelah titik desimal (angka dan Cina dapat dimasukkan), dan huruf dan simbol operator tidak dapat dimasukkan:
<input onkeypress = "if ((event.keycode <48 || event.keycode> 57) && event.keycode! = 46 || //./ d/d $/. Test (value)) event.returnValue = false">
8. Hanya ada hingga dua digit setelah titik desimal (angka, huruf, dan Cina), dan simbol operator dapat dimasukkan:
<input onkeyup = "this.value = this.value.replace (/^(/-)*(/d+)/. (/d/d).*$/, '$ 1 $ 2. $ 3')">
Ini semua tentang artikel ini. Teman yang membutuhkannya bisa merujuknya.