input框5连--输入框不可输入以0开头的数字但是可以输入带0的数字&常用正则

第一弹:input框只能输入数字缺能输入e的原因。链接:input框1连–数字输入框能输入e的原因
第二弹:input框限制用户输入长度,超出长度不可输入。链接:input框2连–限制用户输入长度
第三弹:input框3连–不允许用户输入符号。input框3连–不允许用户输入符号。
第四弹:input框4连–输入框只能输入数字完美版。input框4连–输入框只能输入数字完美版。
第五弹:本篇博客:

首先上 输入框只能输入正整数的正则:

/^[1-9]\d*$/
 <input 
     type="text" onKeyUp="this.value=this.value.replace(/\D/g,'')" 
     onafterpaste="this.value=this.value.replace(/\D/g,'')"
     placeholder="购买次数"  />

不可以输入以0开头的数字 eg:012
可以输入0 的正则:

/(^[1-9]([0-9]*)$|^[0-9]$)/

不可输入0,和小数的正则。

/^-?[1-9]\d*$/

/^-?\d+$/

不可输入0。但是可以输入小数点前4后2的正数。
注意:此正则需要input框type=number下可用,当type=text时,输入0000,正则是可以通过的!

/^([0-9]\d{1,3}|([0]\.\d{1,2}|\d{1,4}\.\d{1,2})|([1-9]\d{0,4}))$/

可以输入8位正整数,但是不可输入多个0,类似:00,000,但是可以输入一个0

(^[1-9]([0-9]*){1,8})|(^[0-9]{1})$

当type=number,并且在输入框中min=0,设置后,这个正则是不好使的,因为当我输入001的时候系统默认我输入1。所以需要换一种方式来解决这个问题。修改文字提示,或者是用其他验证方式提示。

数字和符号组合

/^[^\u4e00-\u9fa5A-za-z]+$/

数字、英文和符号的组合

/^[^\u4e00-\u9fa5]+$/

小数前3后4

^((?:-?0)|(?:-?[1-9]\d{0,2}))(?:\.\d{1,4})?$

onkeyup="javascript:this.value.substring(0,1)=='0'?this.value='0':this.value=this.value"

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值