如何防止文本元素中的字母?

Jul*_*les 3 html safari textinput

我喜欢最大长度为3的输入.

这些输入值应该只是数字而不是字母.

通过参考这篇文章:为什么<input type ="number"maxlength ="3">在Safari中不起作用?你可以看到我无法使用 <input type="numbers">

那么如何防止text-input-element中的字母呢?

Juk*_*ela 6

<script>
function checkPattern(elem) {
  if(!elem.value.match('^' + elem.getAttribute('pattern') + '$')) {
    alert('The value must be 3 digits.');
  }
}   
</script>
<input maxlength=3 pattern=[0-9]{3} onchange=
   checkPattern(this)>
Run Code Online (Sandbox Code Playgroud)

根据应用程序修改错误处理.我们的想法是使用HTML5 pattern属性并使用简单的JavaScript代码进行备份,适用于不支持该属性但禁用了JavaScript的浏览器.