나는 지불을 받아들이 기 위해 스트라이프를 사용하려고 노력해 왔으며 발견 한 가이드에서 대략적인 프로토 타입을 만들려고 노력했지만 제대로 작동하지 않는 것 같습니다. "stripeToken"이라는 새 입력은 제출 후에 절대로 삽입되지 않습니다. 이로 인해 내 PHP 스크립트가 실행되지 않습니다. 왜 삽입하지 않는지 이해하려고 노력 중입니다.자바 스크립트가 입력을 삽입하지 않음
자바 스크립트 : (페이지의 머리에서)
<script src="https://js.stripe.com/v2/"></script>
<script type="text/javascript">
Stripe.setPublishableKey('mykeyishere');
</script>
<script>
// Event Listeners
$('#payment-form').on('submit', generateToken);
var generateToken = function (e) {
var form = $(this);
// No pressing the buy now button more than once
form.find('button').prop('disabled', true);
// Create the token, based on the form object
Stripe.create(form, stripeResponseHandler);
// Prevent the form from submitting
e.preventDefault();
};
</script>
HTML/자바 스크립트 : (양식 머리와 두 시도 JS)
<form action="index.php" method="POST" id="payment-form">
<script>
var stripeResponseHandler = function (status, response) {
var form = $('#payment-form');
// Any validation errors?
if (response.error) {
// Show the user what they did wrong
form.find('.payment-errors').text(response.error.message);
// Make the submit clickable again
form.find('button').prop('disabled', false);
} else {
// Otherwise, we're good to go! Submit the form.
// Insert the unique token into the form
$('<input>', {
'type': 'hidden',
'name': 'stripeToken',
'value': response.id
}).appendTo(form);
// Call the native submit method on the form
// to keep the submission from being canceled
form.get(0).submit();
}
};</script>
<span class="payment-errors"></span>
<div class="row">
<label>
<span>Card Number</span>
<input type="text" data-stripe="number">
</label>
</div>
<div class="row">
<label>
<span>CVC</span>
<input type="text" data-stripe="cvc">
</label>
</div>
<div class="row">
<label>
<span>Expiration (MM/YYYY)</span>
<input type="text" data-stripe="exp-month">
</label>
<input type="text" data-stripe="exp-year">
</div>
<button type="submit">Submit</button>
</form>
다른 스크립트로 머리에 다시 넣습니다. 여전히 효과가 없었습니다. 또한 개발자 모드에서 네트워크 메뉴를 열었지 만 JS에 익숙하지 않아서 내가 무엇을 찾고 있는지 정확히 알지 못합니다. 다른 부분은 그렇습니다. 제출시 Stripe.js는 정보를 처리하고 토큰을 다시 보내 양식에 입력을 넣고 양식을 실행합니다. – spencdev