【发布时间】:2014-06-02 12:45:42
【问题描述】:
对于信用卡付款,我们接受 3 位数的安全码。
在某些情况下,在某些浏览器(可能是较旧的 IE 版本)上,我们会出现开头为 0 的代码(例如 012),其中第一个 0 被删除,因此只允许输入 12。因此,这会使安全码。
我们将此作为数字输入,仅允许在移动设备上输入数字,我感觉这就是原因。但是,我们能做些什么来阻止这种情况发生吗?
当前输入的代码是:
<input type="number" pattern="[0-9]*" size="4" value="$securitycode" name="securitycode">
非常感谢。
【问题讨论】:
-
从技术上讲,虽然它只包含数字,但我将其视为字符串输入,因为您需要 3 个字符并且实际上并不关心字段的数值。因此,您应该将其验证为应仅包含数字的字符串,而不是数字......因此更改您的输入类型。
标签: html