บางครั้งคุณต้อง จำกัด ประเภทของอินพุตเนื้อหาในกล่องข้อความ ในส่วนนี้นิพจน์ทั่วไปจะ จำกัด กล่องข้อความเพื่อป้อนตัวเลขเพียงจุดทศนิยมตัวอักษรภาษาอังกฤษอักขระจีนและรหัสอื่น ๆ
ตัวอย่างเช่นป้อนจำนวนเต็มบวกมากกว่า 0
<อินพุต onkeyup = "ถ้า (this.value.length == 1) {this.value = this.value.replace (/[^1-9]/g, '')} else {this.value = this.value.replace (// d/g, '')}" onafterPaste = "ถ้า (this.value.length == 1) {this.value = this.value.replace (/[^1-9]/g, '')} else {this.value = this.value.replace (// d/g, '')
1. เฉพาะรหัสตัวเลขเท่านั้นที่สามารถป้อนในกล่องข้อความ (ไม่สามารถป้อนจุดทศนิยมได้)
<อินพุต onkeyup = "this.value = this.value.replace (// d/g, '')" onafterpaste = "this.value = this.value.replace (// d/g, '')">
2. ป้อนตัวเลขเท่านั้นและสามารถป้อนจุดทศนิยม เช่นเท่านั้น
<อินพุต onkeyup = "ถ้า (isnan (value)) execommand ('undo')" onafterpaste = "ถ้า (isnan (value)) execommand ('undo')"
<ชื่ออินพุต = txt1 onChange = "ถ้า (// d/.test (this.value)) {แจ้งเตือน ('เฉพาะป้อนตัวเลข'); this.value = '';}">
3. ตัวเลขและทศนิยมวิธีสองวิธี
<อินพุต type = text t_value = "" o_value = "" onkeypress = "ถ้า (! this.value.match (/^[/+/-]?/d*?/.?/d*? $/)) this.value = this.t_value; this.t_value = this.value; ถ้า (this.value.match (/^(?: [/+/-]?/d+(?: /./ d+)?)? $/)) this.o_value = this.value " onkeyup = "ถ้า (! this.value.match (/^[/+/-]?/d*?/d*?/d*? $/)) this.value = this.t_value; this.t_value = this.value; ถ้า (this.value.match (/^(?: [/+/-]?/d+(?: /./ d+)?)? $/)) this.o_value = this.value " onblur = "ถ้า (! this.value.match (/^(?: [/+/-]?/d+(?: /./ d+)? | /./ d*?)? $/)) this.value = this.o_value; .match (/^/./ d+$/)) this.value = 0+this.value; ถ้า (this.value.match (/^/.$/)) this.value = 0; this.o_value = this.value} ">
ห่อหุ้มเป็นฟังก์ชั่นแยกต่างหาก:
ฟังก์ชั่น keypress (ob) {ถ้า (! ob.value.match (/^[/+/-]?/d*?/.?/d*? $/)) ob.value = ob.t_value; else ob.t_value = ob.value; if (ob.value.match (/^(?: [/+/-]?/d+(?: /./ d+)?) else ob.t_value = ob.value; ถ้า (ob.value.match (/^(?: [/+/-]?/d+(?: /./ d+)?)? $/)) ob.o_value = ob.value; } ฟังก์ชั่น onblur (ob) {ถ้า (! ob.value.match (/^(?: [/+/-]?/d+(?: /./ d+)? | /./ d*?)? $/)) ob.value = ob.o_value; อื่น ๆ จับคู่ (/^/./ d+$/)) ob.value = 0+ob.value; ถ้า (ob.value.match (/^/.$/)) ob.value = 0; ob.o_value = ob.value};};เพียงแค่ผ่านวัตถุนี้ในการโทร!
4. ป้อนตัวอักษรและอักขระจีนเท่านั้น
<อินพุต onkeyup = "value = value.replace (/[/d]/g, '')" onbeforepaste = "clipboarddata.setData ('text', clipboardData.getData ('text') แทนที่ (/[/d]/g, '))
5. ป้อนจดหมายและตัวเลขภาษาอังกฤษเท่านั้นไม่ใช่ภาษาจีน
<อินพุต onkeyup = "value = value.replace (/[^/w /.//ife/ ig, '')">
6. ป้อนหมายเลขและภาษาอังกฤษเท่านั้น
<อินพุต onkeyup = "value = value.replace (/[^/d | chun]/g, '')">>
7. สามารถมีได้สูงสุดสองหลักหลังจากจุดทศนิยม (ตัวเลขและภาษาจีนสามารถป้อนได้) และไม่สามารถป้อนสัญลักษณ์ตัวอักษรและตัวดำเนินการได้:
<อินพุต onkeypress = "if ((event.keycode <48 || event.keycode> 57) && event.keycode! = 46 || //./ d/d $/. ทดสอบ (ค่า)) event.returnvalue = false">>
8. สามารถมีได้มากถึงสองหลักหลังจากจุดทศนิยม (ตัวเลขตัวอักษรและภาษาจีน) และสัญลักษณ์ของตัวดำเนินการสามารถป้อนได้:
<อินพุต onkeyup = "this.value = this.value.replace (/^(/-)*(/d+)/. (/d/d).*$/, '$ 1 $ 2 $ 3')">>
ทั้งหมดนี้เกี่ยวกับบทความนี้ เพื่อนที่ต้องการมันสามารถอ้างถึงมันได้