Html 聚焦时,什么输入字段类型强制数字键盘弹出?

Html 聚焦时,什么输入字段类型强制数字键盘弹出?,html,mobile,opera,textinput,Html,Mobile,Opera,Textinput,我尝试了,但在Opera上,它输出一个奇怪的输入框,并带有一个“上下”处理程序。我所期望的是一个常规文本字段,一旦你关注它,它会提示数字键盘而不是字母表。这可能吗 p、 我不想验证。这将是一个很好的用户体验,仅此而已。HTML5处理电话号码的官方方式是: <input type="tel"> 您可能不喜欢Opera在使用时提供的“奇怪的输入框”,但当您想要求访问者输入数值时,这确实是合适的输入区域类型。type=“number”是HTML5,许多手机不支持HTML5。 对于呼叫

我尝试了
,但在Opera上,它输出一个奇怪的输入框,并带有一个“上下”处理程序。我所期望的是一个常规文本字段,一旦你关注它,它会提示数字键盘而不是字母表。这可能吗


p、 我不想验证。这将是一个很好的用户体验,仅此而已。

HTML5处理电话号码的官方方式是:

<input type="tel">

您可能不喜欢Opera在使用
时提供的“奇怪的输入框”,但当您想要求访问者输入数值时,这确实是合适的输入区域类型。

type=“number”是HTML5,许多手机不支持HTML5。 对于呼叫链接,您可以使用type=“tel”或
。 你也应该看看

2015年10月编辑:

大多数(如果不是所有的话)智能手机都支持HTML5和CSS3,因此
type=“number”
是最好的方式

此帖子现在无效。现在所有智能手机都支持HTML5和CSS3,因此添加type=“number”实际上会提示数字键盘弹出。我只是在两个不同的Android版本和一部iPhone上检查了一下。这样以后就不会有人尝试WAP而不是正确的HTML5格式了。

使用
pattern=“[0-9]*”

  • 示例编号输入:

  • 电话输入示例:

注意:不支持
type=“tel”
的浏览器将默认为文本类型

注意:使用
type=“number”
可能会导致某些浏览器和用户体验出现问题,用户可能需要在输出中输入标点符号或逗号

参考资料:

试试

如果您使用Android,这将很有帮助。

这将在移动设备上工作,并将防止字母“e”(以及所有其他字母)被允许在您页面的桌面版本中键入
type=“number”
本身通常仍允许按照规范使用“e”:

<input pattern="[0-9]*" type="text" oninput="this.value=this.value.replace(/[^0-9]/g,'');">


如果您在上面使用
type=“number”
,那么如果您键入“123”,则“e”,则
oninput
JS将替换框中的所有内容。如果你真的想要整数值,就用type=“text”吧。

但是“type=number”没有提示数字键盘,我会试试电话类型我在windows mobile 6.5上使用opera 10,我想里面有一些HTML5,我知道我看到了工作,输入类型不工作,尽管
type=“number”
属性不一定要显示数字键盘。问题是:您是在试图强制用户输入数字值,还是输入电话号码?对于前者,
type=“number”
是您想要的。对于后者,
type=“tel”
(电话键盘,包括#和*)是您需要的
@Ayyash,我没有生气,我只是觉得你没注意。您询问了有关移动Opera的输入。我告诉过你许多2010年时代手机上安装的浏览器是如何使用输入的@fravelgue告诉你,许多手机不支持HTML(不相关,因为Opera不支持)、一种链接的工作方式(不相关,因为它们不是输入),以及2001年的WAP CSS规范,该规范不适用于Opera、WAP v1或HTML输入字段。顺便说一句:不,你从来没有说过,
input type=tel
对你不起作用,你说“我试试tel类型”,但从来没有报告过你的结果。我读过那篇文档,里面没有任何东西能让数字键盘提示字母表的安装,所以看起来未来对网络开发者没有任何希望:(我将把这作为最后的回答3评论:① <代码>&。@Ayyash,sry我想我把输入和a混淆了。总之,输入类型=“number”是HTML5。你可以在iphone和android手机中使用,我希望在未来的诺基亚浏览器中使用。@Dori WAP已经死了(就像HTML5杀死xhtml一样,你知道吗?!)。但是有很多浏览器只支持它,而且您可以在HTML MP中使用WAP功能。请记住,每个国家都不是美国或欧洲。input type=tel完全被Opera Mobile忽略,而是显示一个常规键盘。这是最好的最新答案。感谢您的注释和链接,两者都非常有启发性.根据我的测试,
type='number'
调出iOS上显示数字的完整键盘,而
type='tel'
调出数字键盘,这似乎是海报上所问的。在Android上,
number
tel
都调出数字键盘。