input限制的正则表达式

21 篇文章 0 订阅
4 篇文章 0 订阅

1. input属性为number,做if判断,然后slice选取 (目前使用过此方法,比较简单)用于添加地址时的手机号码框

<input type="number" oninput="if(value.length>4)value=value.slice(0,4)" />

2. input属性为text,maxlength为最大长度,onkeyup onafterpaste 限制只能输入数字

<input type="text" placeholder="只能输入四位数字字符" class="input" id="input" maxlength="4" onkeyup="if(this.value.length==1){this.value=this.value.replace(/[^19]/g,'')}else{this.value=this.value.replace(/\D/g,'')}"
onafterpaste="if(this.value.length==1){this.value=this.value.replace(/[^1-19]/g,'')}else{this.value=this.value.replace(/\D/g,'')}">

只能输入中文:

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

只能输入数字,且开头不能为 0

<input 
	type="number" 
	oninput="value=value.replace(/^[0]+[1-9]*/g,'')"
/>

只能输入数字和一个小数点,开头不能是数字

<input 
    type="text"
    oninput="value=value.replace(/^\./,'').replace(/[^\d.]+/g,'').replace('.','$#$').replace(/\./g,'').replace('$#$','.')"
>

限制输入的数字最大值为10

<input 
	type = "number"
    oninput = "if(value> 10)value=10
/>

限制输入的数字最小值为0

<input 
	type = "number"
    oninput = "if(value< 0)value=0
/>

输入框只能输入字母和下横线的正则表达式

<input οnkeyup="this.value=this.value.replace(/[^_a-zA-Z]/g,'')" οnpaste="this.value=this.value.replace(/[^_a-zA-Z]/g,'')"> 

输入框只能输入字母数字和下横线的正则表达式

<input οnkeyup="this.value=this.value.replace(/[^\w]/g,'')" οnpaste="this.value=this.value.replace(/[^\w]/g,'')"><input οnkeyup="this.value=this.value.replace(/[\W]/g,'')" οnpaste="this.value=this.value.replace(/[\W]/g,'')">

只能输入数字和英文的:

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

只能输入数字的:

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

只能输入全角的:

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

只能输入汉字的:

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

输入数字和.,否则弹出输入有误

<input type=text name= caolig value ="" οnblur="if (!(/^[\d]+\.?\d*$/.test(this.value)) ){alert('您的输入有误'); this.value='';this.focus();}">

踩坑,留下足迹~

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值