我的页面上有一个选择元素。该选择元素选择产品的不同变体。所有这些产品的价格相同,但是我想在发票上注明选择了哪种产品。我正在使用PayPal智能按钮在页面上集成结帐功能。假设我有以下内容:
<select id="product-select">
<option value="product-A" selected> Product A </option>
<option value="product-B"> Product B </option>
<option value="product-C"> Product C </option>
</select>
<div id="paypal-button-container"> </div>
<script>
paypal.Buttons({
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [{
amount: {
value: '50'
},
items: [{
unit_amount: {
value: '50'
},
quantity: '1',
name: 'Product A',
}],
}],
});
}
}).render('#paypal-button-container');
</script>
[当用户将所选选项更改为产品B或产品C时,是否需要在选择更改时重新呈现PayPal按钮?如果是这样,我该如何处置旧的?
您确实需要重新渲染。
而不是立即调用.render(),而是保存对对象的引用。
var myButton = paypal.Buttons({...});
myButton.render('#paypal-button-container');
//things happen, user makes changes to purchase_units array
myBytton.close();
//render the button with new info