我遵循this other Stack Overflow post中給出的建議,並使用the list of regexes used by Chrome中的模式,但由於某些原因,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
看到,我使用的反應。也許這與它有關。誰知道!
我已經設置了一個測試頁面,以便其他人可以使用它。您可以在Safari中訪問https://entire.life/payment-form-test,並且(如果您啓用了自動填充並保存了信用卡),它會彈出。如果您在Chrome中訪問它,它將不會彈出自動填充選項。即使在輸入卡片的第一個字母后。
此代碼是開源的。您可以看到/payment-form-test
頁面here的來源。
是啊,這很奇怪。你可以在這裏看到一個[工作演示](https://greenido.github.io/Product-Site-101/form-cc-example.html),其中的CC#將在Chrome中爲你自動完成。我想知道它是否與你使用'type =「tel」'有任何關係,但我希望不會。 – idbehold
啊,這似乎值得嘗試@idbehold,但不是問題。我將它改爲'type =「text」',但問題依然存在。這是有道理的!我從[Stripe's Checkout示例](https://stripe.com/docs/tutorials/checkout)複製了輸入元素屬性'type =「tel」'和所有內容。如果它給我造成了一個問題,而不是它們,那會很奇怪!我們必須找錯地方。 : - / – chadoh