Я интегрирую Stripe. Интеграция Strip3 работает нормально, я тоже получил токен карты. Но возникла проблема при передаче токена контроллеру со страницы просмотра. В этом приложении они написали общий вызов ajax для всех форм. всякий раз, когда я пытаюсь добавить токен полосы в форму, и передача значения не работает в ajax. В обычном методе публикации, который работает нормально. Но мне нужно передать его в ajax, который обычно пишется.
`
$(document).ready(function() {
// Create an instance of Stripe
var stripe = Stripe('{{ env('STRIPE_PUBLISH_KEY') }}');
// Create an instance of elements
var elements = stripe.elements();
// Create a card element and add it to the DOM
// var card = elements.create('card');
//card.mount('#card-element');
var cardNumber = elements.create('cardNumber');
cardNumber.mount('#example3-card-number');
var cardExpiry = elements.create('cardExpiry');
cardExpiry.mount('#example3-card-expiry');
var cardCvc = elements.create('cardCvc');
cardCvc.mount('#example3-card-cvc');
// Handle form submission
$(' #next').click(function(event) {
$('#token').val(' ');
// event.preventDefault();
stripe.createToken(cardNumber, cardExpiry, cardCvc).then(function(result) {
if (result.error) {
// Display error message to the user
var errorElement = document.getElementById('card-errors');
errorElement.textContent = result.error.message;
// Re-enable the submit button
form.querySelector('button').disabled = false;
console.log(result.error);
return false;
} else {
stripeTokenHandler(result.token);
return false;
}
});
});
});
function stripeTokenHandler(token) {
// Insert the token ID into the form so it gets submitted to the server
var form = document.getElementById('payment-form');
// Add Stripe Token to hidden input
var hiddenInput = document.createElement('input');
hiddenInput.setAttribute('type', 'text');
hiddenInput.setAttribute('name', 'stripeToken1');
hiddenInput.setAttribute('value', token.id);
form.appendChild(hiddenInput);
$('#token').val(token);
var $form = $('#payment-form');
$form.append($('').val(token));
$form.get(0).submit(); // here it needs to continue the submit but passing it in post wrongly
return true;
}
Подробнее здесь: https://stackoverflow.com/questions/784 ... ax-request