使条带“数据量”使用带变量的动态
我需要让我的脚本结帐使用我的var $priceCheckout = $('#priceCheckout');
结账价格。
我试图用data-amount= $priceCheckout;
替换data-amount =“2000” data-amount= $priceCheckout;
没有运气。 所以要清楚!
它需要我的$ priceCheckout并将其置于数据量的placede,以便$ priceCheckout的价值将是结账价格!
这是我的脚本。
$(function () { // Store references to frequently used elements - for speed. var $divFrom = $('#division-from'); var $divTo = $('#division-to'); var $tierFrom = $('#tier-from'); var $tierTo = $('#tier-to'); var $price = $('#price'); var $priceCheckout = $('#priceCheckout'); // Select price calculation callback $(document).on('change', '.price-modifier', function () { var divFrom = $divFrom.val(); var divTo = $divTo.val(); var tierFrom = $tierFrom.val(); var tierTo = $tierTo.val(); // Error handling var errors = validatePriceModifiers(divFrom, tierFrom, divTo, tierTo); if (errors.length === 0) { // No errors var price = getPrice(divFrom, tierFrom, divTo, tierTo); $price.html(price + ' €' + '
' + ''); $priceCheckout.html(price); } else { // Display errors $price.empty(); for (var i = 0; i < errors.length; i++) { $price.append($('').html(errors[i].message)); } } }); });
您需要使用Checkout 自定义集成 。
这是一个简单的小提示,显示如何使用用户指定数量的Checkout: https : //jsfiddle.net/ywain/g2ufa8xr/
您可以使用相同的逻辑插入自己的值作为对handler.open()
的调用中的amount
参数。
这里的关键是data-amount
是HTML脚本标记的属性。 它不是 JavaScript变量,您不能在HTML标记中直接为其分配一个(如
)。
但是,您可以使用JavaScript为其分配值,如下所示:
$('.stripe-button').attr('data-amount', $priceCheckout);
该代码将使用类stripe-button
将任何HTMl元素的属性data-amount
更改为代码运行时变量$priceCheckout
具有的值。
那么你想什么时候运行呢? 您需要在$priceCheckout
设置为变量后运行它(如果价格发生变化,您需要再次运行它以进行更新)。 但是您需要在使用该值运行的任何代码之前运行它。
您可以使用Stripe的自定义结账。 虽然,我发现通过jQuery更容易实现这一点,只需每次增加数量时使用更改的变量重新编写脚本:
var $priceCheckout = $('#priceCheckout'); $("#stripe-form").html( '' );