Files
2024-11-23 09:17:44 +00:00

37 lines
1.1 KiB
JavaScript

/* A JavaScript to create the token on the frontend when the form is submitted: */
var stripe = Stripe('your_public_key'); // Public Key
var elements = stripe.elements();
var card = elements.create('card');
card.mount('#card-element');
var form = document.getElementById('payment-form');
form.addEventListener('submit', function(event) {
event.preventDefault();
stripe.createToken(card).then(function(result) {
if (result.error) {
// Show error in #card-errors
var errorElement = document.getElementById('card-errors');
errorElement.textContent = result.error.message;
} else {
// Send token to server
stripeTokenHandler(result.token);
}
});
});
function stripeTokenHandler(token) {
var form = document.getElementById('payment-form');
var hiddenInput = document.createElement('input');
hiddenInput.setAttribute('type', 'hidden');
hiddenInput.setAttribute('name', 'stripeToken');
hiddenInput.setAttribute('value', token.id);
form.appendChild(hiddenInput);
// Submit the form
form.submit();
}