限制Input输入类型的常见代码集合

时间:2021-05-21 01:15:10

搜集整理常见的限制INPUT输入类型的实现方式:

1.只能输入和粘贴汉字

<input onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text'.clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))"><br/>

\u4E00-\u9FA5  是两个unicode值,在unicode表中汉字的头和尾。

2.只能输入和粘贴数字

<input onkeyup="value=value.replace(/[^\d]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"><br/>

3.只能输入数字和英文

<input onkeyup="value=value.replace(/[\w]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"><br/>

4.只能输入全角的

<input onkeyup="value=value.replace(/^\uFF00-\uFFFF/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/^\uFF00-\uFFFF/g,''))">

5.数字脚本

<input onkeyup="if(/\D/.test(this.value)){alert('只能输入数字');this.value='';}"><br/>

6.禁止输入汉字

<input style="ime-mode:disabled">输入法不可转换,但可粘贴上<br/>

7.输入数字和小数点

<input onkeyup="value=value.replace(/[^\d{1,}\.\d{1,}|\d{1,}]/g,'')"/><br/>

8.只能数字和"-".例如在输入时间的时候使用

<input onkeyup="value=value.replace(/[^\w&=]|_/ig,'')" onblur="value=value.replace(/[^\w&_]/ig,'')"/>

具体案例:

1.检验是否全由数字组成

/^[0-9]{1,20}$/

2.校验登录名

只能输入5-20个以字母开头、可带数字、'_'、' . '的字串

/^[a-zA-Z]{1}([a-zA-Z]|[._]){4,19}$/

3.检验用户姓名:只能输入1-30个以字母开头的字串

/^[a-zA-Z]{1,30}$/

4.检验密码:只能输入6-20个字母、数字、下划线

/^(\w){6,20}$/

5.校验普通电话、传真号码:可以'+'或数字开头,可含有'-'和' '

/^[+]{0,1}(\d){1,3}[]?[-]?)((\d)|[]){1,12})+$/

6.校验URL

/^http[s]{0,1}:\/\/.+$/或/^http[s]{0,1}:\/\/.{1,n}$/(url串的长度为length('http://')+n)

\/:表示字符"/"

.:表示所有字符的集;

+等同于{1,},就是1到正无穷。

7.校验纯中文字符

/^[\u4E00-u9FA5]+$/