【问题标题】:Enforce numbers in mobile web form在移动 Web 表单中强制执行数字
【发布时间】:2012-11-08 01:46:16
【问题描述】:

我有一个针对 Opera Mini 和 Opera Mobile 的简单网络表单。我只使用了一个 HTML 输入元素。

现在我想限制元素只有整数。有没有办法在这个浏览器中强制执行此操作(即使手机在输入表单时也会开启它的号码模式)?

如果我想允许浮动,那么有可能吗?

【问题讨论】:

    标签: html forms user-input mobile-website


    【解决方案1】:

    您应该能够使用“数字”输入类型,它是 HTML5 规范的一部分。我不确定 Opera 是否会自动显示数字小键盘,但 iphone 至少会...

    【讨论】:

    • Opera mini 在 iPhone 上不显示数字小键盘。请参阅上面的其他评论。
    【解决方案2】:

    在 XHTML Basic 中,您可以在 <input> 标记上使用 inputmode="digits" 来完成此操作。它应该在 HTML5 机制的移动浏览器上得到更广泛的支持。

    【讨论】:

      【解决方案3】:
      <input type='tel' /> 
      

      将在 Android、WP8 和 iPhone 默认浏览器以及 Android 版 Chrome 上显示数字键盘。在我的 Android 浏览器上,非数字字符会被模糊处理。

      <input type='number' /> 
      

      应该适用于浮动。在我的两个 Android 浏览器上,它还会自动删除前导零 onblur。

      【讨论】:

      • 在 Opera Mini 中都不起作用。似乎他们还不支持 HTML5 的这一部分。我选择了tel,因为它得到了其他移动浏览器的最广泛支持。
      • 键盘行为取决于浏览器以及设备键盘公开的模式。据我所知,这些 HTML5 输入类型是建议您想要哪种键盘模式的唯一方法。如果 Opera Mini 无法识别它们,我认为您无法强制使用键盘(除了为该站点制作自己的 javascript 屏幕键盘)。对不起。
      • 我知道。 =/ 你知道有什么好的 javascript 屏幕键盘只能为 Opera Mini 激活并替换它们的默认值吗?
      • 我没用过,但我刚刚在SO上发现了这个:stackoverflow.com/questions/8762431/…
      猜你喜欢
      • 1970-01-01
      • 2016-06-29
      • 1970-01-01
      • 2013-06-30
      • 1970-01-01
      • 2019-07-02
      • 2016-04-13
      • 1970-01-01
      • 2011-06-12
      相关资源
      最近更新 更多