记一个改了几小时的限制数字输入问题

       先抒发一下情绪,好久没写博客了,突然觉得写这个似乎挺有意思的,也许是太久没有,偶尔记录一下,觉得挺好玩的,好像很多事情都是这样,坚持下去,总是会半途而废,而且有时候会觉得乏味,但是偶尔做一下,会觉得有点意思,但是很多事情只是觉得有意思,但是又好像没有什么意义。

       这两天碰到了一个输入框限制数字输入的问题,我一开始,设置input为number类型,后来发现不知道无法限制字数,于是就用了.slice(0, len);去截取,但是又出现了一个问题,这问题就是e和._+等符号还是可以输入,而且获取输入框的值,会发现获取到的值是“”,也就是说获取到的是空值,但是输入框又是有显示内容,所以就又在input标签中添加了onKeypress="return (/[\d]/.test(String.fromCharCode(event.keyCode)));",发现在pc端可以实现无法输入这些符号,但是切换成中文输入法,然后输入e,之后敲回车,发现e是可以成功显示到输入框中。

      这时候我就把type改为text了,然后发现.replace(/[^\d]/g,'');也可以将不是数字的符号删除了,e也不能输入了,长度也可以控制了,突然觉得number不好用,我以后所有的input框的type需要设置number的都还是设置为text比较好操作一点。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值