PayPal 快速结帐集成,一页上有多个按钮
PayPal express checkout integration with multiple buttons on one page
我目前有一个项目列表,每个项目都有一个 Paypal 按钮。每件商品将通过单击其相关按钮单独购买。
<ul>
<li data-id="1">Item 1 <div class="paypal-button"></div></li>
<li data-id="2">Item 2 <div class="paypal-button"></div></li>
<li data-id="3">Item 3 <div class="paypal-button"></div></li>
</ul>
<script src="https://www.paypalobjects.com/api/checkout.js"></script>
<script>
paypal.Button.render({
// options
}, '.paypal-button');
</script>
不幸的是,paypal.Button.render()
似乎只会渲染它找到的第一个元素。
是否可以对多个元素执行此调用?
需要给每个元素一个唯一的id,然后多次调用render:
<ul>
<li data-id="1">Item 1 <div id="button-1"></div></li>
<li data-id="2">Item 2 <div id="button-2"></div></li>
<li data-id="3">Item 3 <div id="button-3"></div></li>
</ul>
<script src="https://www.paypalobjects.com/api/checkout.js"></script>
<script>
[ '#button-1', '#button-2', '#button-3' ].forEach(function(selector) {
paypal.Button.render({
// options
}, selector);
});
</script>
如果您像我一样不喜欢跟踪 ID,可以改用 类。并使用数据属性来区分。
<div class="paypal-button" data-my-attribute="tree"></div>
<div class="paypal-button" data-my-attribute="dog"></div>
<div class="paypal-button" data-my-attribute="car"></div>
<script src="https://www.paypalobjects.com/api/checkout.js"></script>
<script>
document.querySelectorAll('.paypal-button').forEach(function(selector) {
paypal.Button.render({
// options
console.log( selector.dataset.myAttribute );
}, selector);
});
</script>
我目前有一个项目列表,每个项目都有一个 Paypal 按钮。每件商品将通过单击其相关按钮单独购买。
<ul>
<li data-id="1">Item 1 <div class="paypal-button"></div></li>
<li data-id="2">Item 2 <div class="paypal-button"></div></li>
<li data-id="3">Item 3 <div class="paypal-button"></div></li>
</ul>
<script src="https://www.paypalobjects.com/api/checkout.js"></script>
<script>
paypal.Button.render({
// options
}, '.paypal-button');
</script>
不幸的是,paypal.Button.render()
似乎只会渲染它找到的第一个元素。
是否可以对多个元素执行此调用?
需要给每个元素一个唯一的id,然后多次调用render:
<ul>
<li data-id="1">Item 1 <div id="button-1"></div></li>
<li data-id="2">Item 2 <div id="button-2"></div></li>
<li data-id="3">Item 3 <div id="button-3"></div></li>
</ul>
<script src="https://www.paypalobjects.com/api/checkout.js"></script>
<script>
[ '#button-1', '#button-2', '#button-3' ].forEach(function(selector) {
paypal.Button.render({
// options
}, selector);
});
</script>
如果您像我一样不喜欢跟踪 ID,可以改用 类。并使用数据属性来区分。
<div class="paypal-button" data-my-attribute="tree"></div>
<div class="paypal-button" data-my-attribute="dog"></div>
<div class="paypal-button" data-my-attribute="car"></div>
<script src="https://www.paypalobjects.com/api/checkout.js"></script>
<script>
document.querySelectorAll('.paypal-button').forEach(function(selector) {
paypal.Button.render({
// options
console.log( selector.dataset.myAttribute );
}, selector);
});
</script>