我遵循了this other Stack Overflow post中给出的建议,并使用了the list of regexes used by 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
页面here的源代码。 最佳答案
如果将以下属性添加到相应的输入元素,它将起作用:
autocomplete="cc-number"
autocomplete="cc-exp"
autocomplete="cc-csc"
我还注意到,如果缺少cc字段之一,Chrome不会自动完成。
您可以在这里玩-https://jsfiddle.net/q4gz33dg/2/
关于javascript - Chrome信用卡自动填充未触发,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32289477/