input type="number" maxlength 属性无效

input 输入框 type="number" 情况下 maxlength 属性无效
请问有什么好的解决方法吗?
现在必须要使用 type = "number"
谢谢各位大神

阅读 15.1k
4 个回答

maxlength是对于type=text才有效的。
如果一定要type=number,那就这样:

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

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

楼主本来给的type是number,应该是规定这个input只能填数字吧,我写个事件规定只能填数字,最大长度为5.

<input type="text" onkeyup="this.value=this.value.replace(/[^0-9]/g,'')" onafterpaste="this.value=this.value.replace(/[^0-9]/g,\'\')" onpaste="return false" maxlength="5">

歪一下。。用正则?验证n位数字:

<input type="number" pattern="^\d{n}$"/>
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏