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


<<:  Day 37 (PHP)

>>:  Day 38 (PHP)

WordPress 强制使用 https 连线 (使用 SSL 凭证)

在 Google 搜寻公告中,已经将 Https 连线列为重要的网站优化排名之中,拥有 https ...

Unity与Photon的新手相遇旅途 | Day16-Timeline&Animation Events

今天主要透过制作药水的上下动画以及人物有火焰特效来Timeline&Animation Ev...

[DAY 02] IAM

IAM (Identity and Access Management) 对於 AWS 上的服务安全...

Day22 DB-关联式资料库与NoSQL

除了系统本身的程序码,资料库也是系统中不可或缺的部份,今天的主题就是资料库,以关联式资料库和NoSQ...

Day10:今天来讲一下microsoft defender for endpoint的装置执行动作

在我们导入microsoft defender for endpoint後,我们主要工作是修复事件。...