单击按钮,我想为数字商品启动贝宝付款。
但是由于集成了多个支付网关,因此无法使用“提交”按钮,而是使用简单的按钮,并通过根据选择的支付方式发送数据来执行所需的操作来触发支付。

但是Paypal DG js希望触发付款的按钮应直接提交付款

这是我的伪代码

<form action ='' method='POST'>
 <input type='text' name='quantity' value=''>
 </form>

 <input type='button' value='Gateway1'/ id='gateway1'>
 <input type='button' value='Gateway2'/ id='gateway2'>
 <input type='button' value='paypalsubmit'/ id='paypal_submit'>


 $.getScript('https://www.paypalobjects.com/js/external/dg.js',function()   {
   //bind paypal iframe
   var dg = new PAYPAL.apps.DGFlow().settrigger({
                                id:'paypal_submit'
                         });
            });
 $('#gateway1').click({
   //submit form to checkout url for gateway1
 })
 $('#gateway2').click({
   //submit form to checkout url for gateway2
 })
 $('#paypal_submit').click({
   // Here I want to open the paypal DG BOX

 })


请注意,该表单没有提交按钮,我正在序列化数据并将其发送到所需的url。

单击按钮如何打开贝宝DG流程。

最佳答案

PayPal数字商品只需要带有id字段的按钮。

<script src ='https://www.paypalobjects.com/js/external/dg.js' type='text/javascript'></script>
<script>
var dg = new PAYPAL.apps.DGFlow({
// the HTML ID of the form submit button which calls setEC
trigger: "paypal_submit"
});
</script>


生成Express Checkout令牌后,您需要使用id将令牌传递给图像。

所以,

 $('#paypal_submit').click({
   // Here I want to open the paypal DG BOX
    <a id='paypal_submit' href='https://www.sandbox.paypal.com/incontext?token=" . YOUR_EC_TOKEN."'><img src='https://www.paypal.com/en_US/i/btn/btn_dg_pay_w_paypal.gif' border='0' /></a>
 });

10-07 19:40
查看更多