如何进行最小长度为4,最大为5且不为0的数字输入;
就像你可以输入1234但第五位不应该是0;所以没有12340也不超过4999?
通过https://stackoverflow.com/users/665261/billy-moon回答:
替换(/ [^ 0-9] /,'') - >制作数字;
replace(/ ^([0-9] {4})[^ 1-9] + /,'$ 1') - >使第5位不是0
replace(/ ^ [^ 0-4] /,'') - >使第一个数字为0-4
代码:
$('input').bind('keyup change',function(){
$(this).attr({ value: $(this).attr('value').replace(/[^0-9]/,'').replace(/^([0-9]{4})[^1-9]+/,'$1').replace(/^[^0-4]/,'') })
})
答案 0 :(得分:2)
我会添加一个验证字段的keyup事件,并替换像这样的错误输入
$('input').bind('keyup change',function(){
$(this).attr({ value: $(this).attr('value').replace(/[^0-9]/,'').replace(/^([0-9]{4})[^1-9]+/,'$1') })
})
答案 1 :(得分:0)
您无法设置“最小长度”,但您可以随时验证输入(更改,表单提交等):
if(!input.value.test(/^\d{4}[1-9]?$/)){
// fail
}