html - 无法在 HTML5 中为数字字段设置最大长度属性

标签 html

<分区>

这是一个文本字段。看...我将 maxlength 属性设置为 10。因此,只能输入 10 个字符

<input maxlength="10" id="txt_name" name="txt_name" type="text" required="required"/>

这是一个数字字段。我希望它的最大长度也为 10,以便用户可以输入他们的 10 位手机号码。这会限制用户输入其他数字。

 <input id="txt_mob" name="txt_mob" type="number" maxlength="10"/>

但是最大长度不适用于数字字段。为什么??有什么方法可以不使用 Javascript 或 jQuery 来做到这一点吗?

这是一个 FIDDLE .

最佳答案

数字类型不接受属性 maxlength。 你可以试试这个

将类型设置为文本并使用它。

这个脚本只接受数字输入,把它放在你的页面的头部。

<script>
function isNumber(event) {
  if (event) {
    var charCode = (event.which) ? event.which : event.keyCode;
    if (charCode != 190 && charCode > 31 && 
       (charCode < 48 || charCode > 57) && 
       (charCode < 96 || charCode > 105) && 
       (charCode < 37 || charCode > 40) && 
        charCode != 110 && charCode != 8 && charCode != 46 )
       return false;
  }
  return true;
}
</script>

然后在您的输入字段中使用它

onkeydown="return isNumber(event);"

例子

<input type="text" onkeydown="return isNumber(event);" maxlength="10" />

关于html - 无法在 HTML5 中为数字字段设置最大长度属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26275483/

相关文章:

html - 如何在嵌入式 swf 上隐藏边框

JavaScript 自动提交表单

javascript - 没有 Javascript 验证的 HTML5 表单验证

html - 更改页面大小时删除图像

javascript - 在页面加载时自动打开 React JS 应用程序中的 Modal

javascript - 在宽度变化时保持可滚动内容的位置

javascript - 如何从其他脚本中获取值(value)? (在 html 中)

javascript - 以编程方式检查单选按钮不适用于每个浏览器

javascript - 是否可以在页面加载时从文本输入中移除焦点?

javascript - 导航栏 - 脚本说明