如何限制文本区域只包含数字?

新手上路,请多包涵

我正在尝试在我的博客上创建一个日期文本框,而日期只是数字。我不希望任何人在输入字母时出错。有没有办法将字符限制为仅数字?谢谢!

原文由 I am a registered user 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 217
2 个回答

如果你使用 jQuery,你可以像在 这个 jsfiddle 中那样做

$('input').keypress(function(e) {
    var a = [];
    var k = e.which;

    for (i = 48; i < 58; i++)
        a.push(i);

    if (!(a.indexOf(k)>=0))
        e.preventDefault();
});

原文由 Madhawa Priyashantha 发布,翻译遵循 CC BY-SA 3.0 许可协议

请改用 HTML5 输入数字类型并利用本机浏览器验证。因此,不需要 JavaScript。

 <input type="number" />

它在浏览器中得到 广泛支持,是标准的最佳实践解决方案。

同样在 mobiletablets 上会出现数字键盘。

看演示

原文由 Oriol 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题