HTML5-解决数值输入框可以输入字母"e"及"."问题

<input id="phone" type="number" oninput="maxLengthCheck(this,4)"><script>function maxLengthCheck(object,max){    object.value=object.value.toString().replace(/[^0-9]/g,'').slice(0, max);  }</script>

该input只允许输入4码数字,故设属性为number,本想着可以少写一些js验证 (我就懒)
殊不知实测时发现竟可以输入"e"及"."
原因是数学中 e=2.17828
"."在输入的过程中确实有被取代掉,但若为最后一码或是停止输入则画面上还是会出现小数点
故调整属性为"tel",测试后可达到原有目的
且若浏览器不支援tel属性,将默认为"text",亦可达成需求

参考文件:
https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/Input/tel


关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章