我遵循了另一个 Stack Overflow 帖子中给出的建议,并使用了Chrome 使用的正则表达式列表中的一个模式,但由于某种原因,Chrome 仍然没有检测到我的字段是信用卡字段。
Safari 检测到它就好了。
这是输入 HTML,如 Web 检查器所示:
<input class="control" id="card_number" type="tel" name="card_number"
value="" autocorrect="off" spellcheck="off" autocapitalize="off"
placeholder="Card number" data-reactid=".0.1.1.0.0.5.0.0"
x-autocompletetype="cc-number" autocompletetype="cc-number">
是的,正如您从 中看到的data-reactid
,我正在使用 React。也许这与它有关。谁知道!
我已经设置了一个测试页面,以便其他人可以使用它。您可以在 Safari 中访问https://entire.life/payment-form-test,并且(如果您启用了自动填充并保存了信用卡),它将弹出。如果你在 Chrome 中访问它,它不会弹出自动填充选项。即使在输入卡片的第一个字母之后。
此代码是开源的。您可以在此处查看该/payment-form-test
页面的来源。