我正在尝试整合Stripe的结帐。我正在使用https://checkout.stripe.com/checkout.js
。
我在表单上有一个金额输入框,我想将该输入框的值传递给Stripe的脚本。
<input id="amount" name="amount" type="text" class="form-control" placeholder="Enter amount" onKeyUp="calculate()" pattern="^[0-9]*$">
这里是我的条纹脚本
<script
src="https://checkout.stripe.com/checkout.js" class="stripe-button"
data-key="<?php echo $stripedetails['publishable_key']; ?>"
data-amount="1000"//<-Amount here
data-name="KAEM Technologies USA, Inc"
data-email="<?php echo $email;?>"
data-currency="<?php echo $curr_code; ?>"
data-description="Widget"
data-image="https://stripe.com/img/documentation/checkout/marketplace.png"
data-locale="auto">
</script>
我尝试使用COOKIES
,我尝试使用
var x = document.getElementById('amount').value;
<?php $amount = "<script>document.write(x)</script>";?>
因此,如何在不提交表单的情况下将输入框的值传递给条纹脚本。
谢谢
@barmar继承了我尝试的代码:
<button type="submit" id="custombutton" class="btn btn-primary" ><i class="fa fa-cc-stripe"></i> Pay Via Card </button>
<script src="https://checkout.stripe.com/checkout.js"></script>
<script>
var handler = StripeCheckout.configure({
key: 'pk_test_DzL83GJnn9U4lMBuk311P1hK0026zJJrLW',
image: 'https://stripe.com/img/documentation/checkout/marketplace.png',
locale: 'auto',
token: function(token) {
// You can access the token ID with `token.id`.
// Get the token ID to your server-side code for use.
}
});
document.getElementById('customButton').addEventListener('click', function(e) {
// Open Checkout with further options:
handler.open({
name: 'KAEM Technologies (USA), Inc.',
description: '2 widgets',
amount: 2000
});
e.preventDefault();
});
// Close Checkout on page navigation:
window.addEventListener('popstate', function() {
handler.close();
});
</script>
这是对的吗?
答案 0 :(得分:0)
使用描述为here的“自定义”集成,您可以在其中从JavaScript调用Stripe checkout方法,而不是将所有内容都放入<script>
标记中。
然后您可以从表单中填写amount:
参数。
document.getElementById('customButton').addEventListener('click', function(e) {
// Open Checkout with further options:
handler.open({
name: 'KAEM Technologies USA, Inc',
description: 'Widget',
amount: document.getElementById('amount').value,
email: "<?php echo $email;?>"
});
e.preventDefault();
});