Reputation: 433
I am trying to mount individual card elements in order to get desired design, but when I mount multiple elements only last one was mounted.
My procedure follows as below:
var stripe = Stripe(STRIPE_PUBLISHABLE_KEY);
var elements = stripe.elements();
var cardNumber = elements.create('cardNumber');
var cardExpiry = elements.create('cardExpiry');
var cardCvc = elements.create('cardCvc');
// Add an instance of the card Element into the `card-element` <div>
cardNumber.mount('#card-element');
cardExpiry.mount('#card-element');
cardCvc.mount('#card-element');
Upvotes: 3
Views: 2288
Reputation: 596
You need to use a different container for each element, otherwise it will overwrite the previous one when you mount it.
In your case you'd need 3 containers (e.g. #card-number-element, #card-expiry-element and #card-cvc-element) and then change your last 3 lines to this for example:
cardNumber.mount('#card-number-element');
cardExpiry.mount('#card-expiry-element');
cardCvc.mount('#card-cvc-element');
Upvotes: 5