<input type ="number"/>未在iOS上显示数字键盘

Ale*_*yne 61 html5 ios

根据Apple的文档,当我设置一个类型为numberI 的输入元素时,应该得到一个数字小键盘.

<input type="number"/>
Run Code Online (Sandbox Code Playgroud)

number:用于指定数字的文本字段.在iOS 3.1及更高版本中打开数字键盘键盘.

看起来该死的几乎不可能搞砸了.但是,当我在iPhone或模拟器(iOS6)上查看这个简单的小提琴时,数字键盘不会出现,而是我得到了标准的字母键盘.

http://jsfiddle.net/Cy4aC/3/

我到底能搞到什么呢?

在此输入图像描述

Maj*_*ssi 115

您需要指定模式:

<input type="number" pattern="\d*"/>
Run Code Online (Sandbox Code Playgroud)

作为number很可能会成为负数或浮点,所以-.,应提供的键盘,除非你指定一个唯一的数字模式.

在此输入图像描述

  • 我在React中使用JSX语法并且必须使用两个反斜杠,例如:`<input type ="number"pattern ="\\ d*"/>` (7认同)
  • 工作正常,但不显示 **十进制(.)** 按钮,知道该怎么做吗?如果输入金额,则需要**十进制**。 (3认同)
  • 这确实有效,但看起来像数字字段不支持模式.https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/number#Pattern_validation (2认同)

Aar*_*gle 8

从 ios 12.2(2019 年 3 月 25 日发布)开始,此解决方案将起作用,并且实现起来最简单

<input type="number" inputmode="decimal"/>
Run Code Online (Sandbox Code Playgroud)

这将仅显示数字键盘,而没有使用 input="tel" 附带的 #+* 字符


pIk*_*kEL 5

我不确定这是否是您想要的,但输入类型=“tel”会给您“电话号码键盘”。