首页 > 解决方案 > 条带结帐数据量动态

问题描述

我正在使用条带结帐进行付款。但是我无法从 jquery 加载动态量。数据正在加载,但金额未显示在结帐窗口中。

这是我的表格:

<form id="paymentform" class="paymentform" action="" method="POST">
          <input type="hidden" class="eventkey" id="event" value="#rc.hunt.id#">
          <script src="https://checkout.stripe.com/checkout.js" 
                  class="stripe-button" 
                  data-key="pk_test_XKVFQRnWDjkNwPxn3xIomQK6" 
                  data-amount="" 
                  data-email = "#GetAuthUser()#"                       
                  data-name="#rc.hunt.name#" 
                  data-description="Registration Fee $#rc.hunt.registration_fee#" 
                  data-image="/favicon.png" 
                  data-label = "Complete Registration" 
                  data-allow-remember-me = "false" 
                  data-locale="auto" data-zip-code="true">
          </script>
        </form>

和jQuery:

$(".stripe-button").attr("data-amount", 20000);

但这不起作用。有什么帮助吗?

标签: jquerystripe-payments

解决方案


使用标准集成(使用脚本标签)时,无法为 Checkout 设置动态金额。相反,您需要使用自定义集成,然后当您打开 Checkout 弹出窗口时,您可以amount显式设置属性:

var amountInCents = Math.floor($("#amountInDollars").val() * 100);
var displayAmount = parseFloat(Math.floor($("#amountInDollars").val() * 100) / 100).toFixed(2);
// Open Checkout with further options
handler.open({
  name: 'Demo Site',
  description: 'Custom amount ($' + displayAmount + ')',
  amount: amountInCents,
});

https://jsfiddle.net/ywain/g2ufa8xr/


推荐阅读