Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Paypal API Express签出错误:文档已准备就绪,元素[object]不存在_Javascript_Jquery_Paypal - Fatal编程技术网

Javascript Paypal API Express签出错误:文档已准备就绪,元素[object]不存在

Javascript Paypal API Express签出错误:文档已准备就绪,元素[object]不存在,javascript,jquery,paypal,Javascript,Jquery,Paypal,我正在使用paypal,我需要在我的表中呈现多个paypal express结账按钮 我遵循了我从中找到的解决方案 这就是我所做的 document.querySelectorAll('.btn-paypal').forEach(function(){ var dis = $(this); var amount = dis.data('amount'); paypal.Button.render({ env: 'sandbox',

我正在使用paypal,我需要在我的表中呈现多个paypal express结账按钮

我遵循了我从中找到的解决方案

这就是我所做的

  document.querySelectorAll('.btn-paypal').forEach(function(){
    var dis = $(this);
    var amount = dis.data('amount');

    paypal.Button.render({

        env: 'sandbox', 

        style: {
            label: 'checkout',
            size:  'medium',    // small | medium | large | responsive
            shape: 'rect',     // pill | rect
            color: 'gold'      // gold | blue | silver | black
        },

        client: {
            sandbox:    'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-w6Q9rX2BdH1',
            production: '<insert production client id>'
        },

        payment: function(data, actions) {
            return actions.payment.create({
                 payment: {
                    transactions: [
                        {
                            amount: { total: amount, currency: 'JPY' }
                        }
                    ]
                }
            });
        },

        commit: true,

        onAuthorize: function(data, actions) {
            return actions.payment.get().then(function(paymentDetails) {
                console.log(paymentDetails)
                swal({ 
                    title: "Confirm Payment!",
                    text: "Confirm the amount of ¥"+paymentDetails.transactions[0].amount.total,
                    type: "info",
                    confirmButtonClass: "btn btn-danger",
                    confirmButtonText: "Yes! Continue Payment",
                    showCancelButton: true,
                    cancelButtonText: "No! Cancel Transaction"
                  },
                  function(){
                    $('.ajax-loading').show();
                   return actions.payment.execute().then(function(){
                    alert('Payment Success');
                   })
                });
            });
        },
        onError: function(err) {
            $('.ajax-loading').hide();
            swal('Ooops!','Paypal failed to load. Please click the paypal button again!','error');
            console.log(err);
        }
    }, dis);
})
document.querySelectorAll('.btn paypal').forEach(函数(){
var dis=$(本);
var金额=存款数据(“金额”);
paypal.Button.render({
环境:“沙盒”,
风格:{
标签:“签出”,
大小:'中',//小|中|大|灵敏
形状:“rect”,//药丸| rect
颜色:“金色”//金色|蓝色|银色|黑色
},
客户:{
沙盒:“XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-w6Q9rX2BdH1”,
生产:''
},
支付:功能(数据、操作){
返回操作.payment.create({
付款:{
交易:[
{
金额:{总计:金额,货币:'JPY'}
}
]
}
});
},
承诺:对,
onAuthorize:函数(数据、操作){
返回actions.payment.get().then(函数(paymentDetails){
console.log(付款详细信息)
swal({
标题:“确认付款!”,
文本:“确认金额¥”+paymentDetails.transactions[0].amount.total,
输入:“信息”,
确认按钮类:“btn btn危险”,
confirmButtonText:“是!继续付款”,
showCancelButton:true,
cancelButtonText:“否!取消交易”
},
函数(){
$('.ajax加载').show();
返回actions.payment.execute().then(function()){
警报(“付款成功”);
})
});
});
},
onError:函数(err){
$('.ajax加载').hide();
swal('Ooops!','Paypal加载失败。请再次单击Paypal按钮!','error');
控制台日志(err);
}
},dis);
})
当我尝试运行此代码时,表中没有显示任何按钮,控制台中出现一个错误,显示为,
Uncaught error:Document已准备就绪,元素[object]不存在

我的错误是什么?请帮忙


谢谢

我只有一个Paypal按钮,但有相同的错误。HTML示例说明

<div id="paypal-button"></div> 

而脚本位于单独的文件中。在加载脚本时,div元素似乎尚未呈现

我只是将脚本移动到div元素中,现在按钮出现了。确保在此之前未在其他地方加载脚本