Я нахожусь в середине унаследованного кода в простой форме оформления заказа, которая отлично работает с оформлением заказа, которое я пытаюсь интегрировать с Stripe;здесь приведен устаревший код, который работает:
<form method="post" name="submit_order" action="40_SubmitOrder.asp" class="text-center">
<script>
$(document).ready(function() {
$('input#SubmitOrder').click(function() {
$(this).val('please wait...');
});
});
</script>
<input class="btn btn-default default-btn" type="submit" name="SubmitOrder" id="SubmitOrder" value="buy stuff">
.. Я попытался использовать вариант этого с Stripe checkout.js, выполнив его как кнопку, и он не работает:
<form method="post" name="submit_order" action="40_SubmitOrder.asp" class="text-center">
<script>
$(document).ready(function() {
$('input#SubmitOrder').click(function() {
$(this).val('please wait...');
});
});
</script>
<button class="btn btn-default default-btn" type="submit" name="SubmitOrder" id="SubmitOrder">buy stuff</button>
.. Всплывающее окно Stripe выглядит нормально, но форма не отправляется.Я попробовал варианты на form.submit () без удачи.И я также пытаюсь сделать это без использования jquery (по устаревшим причинам).
Вот Stripe JS, который я сейчас использую под этой формой:
<script src="https://checkout.stripe.com/checkout.js"></script>
<script>
var handler = StripeCheckout.configure({
key: 'pk_test_mytestkey',
image: 'https://stripe.com/img/documentation/checkout/marketplace.png',
locale: 'auto',
token: function(token) {
// nothing here yet
}
});
document.getElementById('SubmitOrder').addEventListener('click', function(e) {
// Open Checkout with further options:
handler.open({
name: 'legacy checkout site',
description: '2 widgets',
amount: 2000
});
e.preventDefault();
});
// Close Checkout on page navigation:
window.addEventListener('popstate', function() {
handler.close();
});
</script>
Есть лиспособ сделать это без необходимости углубляться в Stripe API?Спасибо!