Ich befolgte den Ratschlag in this other Stack Overflow post und verwendete ein Muster in the list of regexes used by Chrome gefunden, aber aus irgendeinem Grund erkennt Chrome immer noch nicht, dass mein Feld ein Kreditkartenfeld ist.Chrome AutoFill wird nicht ausgelöst
Safari erkennt es einfach gut.
Hier ist der Eingang HTML, wie sie in der Web-Inspektor angezeigt:
<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">
Ja, wie Sie aus dem data-reactid
sehen können, ich bin mit React. Vielleicht hat das etwas damit zu tun. Wer weiß!
Ich habe eine Testseite eingerichtet, damit andere damit spielen können. Sie können https://entire.life/payment-form-test in Safari aufrufen und (wenn Sie AutoFill aktiviert und eine Kreditkarte gespeichert haben), wird es angezeigt. Wenn Sie es in Chrome besuchen, wird die Option zum automatischen Ausfüllen nicht angezeigt. Auch nachdem Sie den ersten Buchstaben Ihrer Karte eingegeben haben.
Dieser Code ist Open Source. Sie können die Quelle für die /payment-form-test
Seite here sehen.
Ja, das ist seltsam.Sie können eine [funktionierende Demo hier] (https://greenido.github.io/Product-Site-101/form-cc-example.html) sehen, in der die CC# für Sie in Chrome automatisch vervollständigt wird. Ich frage mich, ob es etwas damit zu tun hat, dass Sie 'type =" tel "' verwenden, aber ich hoffe nicht. – idbehold
Ah, das schien es wert zu versuchen, @idhehold, aber war nicht das Problem. Ich habe es in 'type =" text "' geändert, aber das Problem bleibt bestehen. Was macht Sinn! Ich habe die Eingabeelementattribute 'type =" tel "' und alle aus [Stripes Checkout-Beispiel] (https://stripe.com/docs/tutorials/checkout) kopiert. Es wäre seltsam gewesen, wenn es ein Problem für mich und nicht für sie verursacht hätte! Wir müssen an der falschen Stelle suchen. : - / – chadoh