有没有办法阻止Mobile Safari在HTML表单的数字字段中插入逗号?

use*_*623 7 safari html5 android ios5

我有一个包含表单的网站,允许用户输入信用卡详细信息.卡号,发行号,CVC号和他们希望存入的金额的字段使用HTML表单中带有"数字"类型的输入框.

iOS 5附带的更新的Mobile Safari会自动在"数字"输入字段中将逗号插入数字中.这不仅在CC编号中看起来很愚蠢,而且会破坏我的验证.有办法阻止这个吗?

使用"数字"而不是"文本"的唯一目的是使iOS和Android提供仅数字软键盘而不是全键盘.

我尝试使用"文本"类型输入,模式设置为"[0-9]*".这会在iOS上显示数字键盘,但不会在Android上显示.它也不允许以小数点输入数字.

我会非常感谢任何建议:)

谢谢

Bla*_*ott 9

我把我从"号码"改为"电话号码",我没有看到问题再出现了.

  • 我已经为CC编号,问题和CVC做了这个."tel"的问题是它不允许小数点,因此它不能用于货币字段. (2认同)

小智 5

你很接近 - 你需要做的就是将模式设置为"[0-9]*"并将类型保持为"数字".


小智 1

我也有同样的问题。我认为这与您设置中的区域格式有关。您可以将类型设置为“文本”:

类型=文本模式=“[0-9] {1,4}(\。[0-9] {2})?”

0 到 9999.99 之间的值。不过,此解决方案不会触发 iOS 5 上的数字键盘。或者保留区域设置覆盖(点/逗号)并设置:

类型=数字步长=“0.01”最大=“9999.99”

对于 0 到 9999.99 之间的十进制值。此外,验证失败或清空属性为“required”的字段不会阻止表单在 Safari 5.1(OS X 和 iOS)中提交。