web-dev-qa-db-fra.com

Comment créer un code postal d'éléments Stripe qui accepte les codes postaux britanniques?

Je crée un formulaire de paiement avec des éléments Stripe distincts:

var stripe = Stripe(...);
var elements = stripe.elements();
...
var postalCode = elements.create('postalCode');
postalCode.mount('#postalCode');

Cela crée un champ qui n'accepte que des chiffres. Cependant, les codes postaux du Royaume-Uni contiennent également des lettres. Comment puis-je les autoriser aussi? Je veux que l'utilisateur puisse entrer à peu près n'importe quel code postal possible dans le monde.

12
Vedran Šego

Comme mentionné dans les commentaires, le formulaire s'ajuste dynamiquement en fonction de la carte que vous entrez, car la carte indique son pays. Cependant, il ne semble pas valider efficacement. J'ai pu créer une commande de test valide avec un code postal britannique non valide.

Stripe a des numéros de carte de test pour de nombreux pays . Essayez de les saisir dans vos formulaires Elements.

Formulaire lorsque l'utilisateur tape le test générique (US) de la carte Visa Stripe affiche "Zip" (il montre Zip lorsqu'il est vide aussi):

Form with Stripe's generic (US) Visa card

Le même formulaire lorsque l'utilisateur tape dans la carte Visa UK test de Stripe change pour afficher "Code postal" pendant la saisie:

Form with Stripe's UK test card

21
mahemoff