javascript - Paypal 客户端 REST : dynamic prices

标签 javascript php rest paypal

我正在为我的项目使用 PayPal 客户端 REST。我有不同的产品,每个产品的价格都不同。我有一个文本框,其中包含购物车中所有产品的总价。但是当我尝试获取该文本框的值时,我收到了 paypal API 错误。下面是我的代码:

<input type="number" id="total_amount">
<div id="paypal-button-container" class="text-right"></div>

<script src="https://www.paypalobjects.com/api/checkout.js"></script>

<script>
    var amt =  $('#total_amount').val();
    paypal.Button.render({
    env: 'sandbox',
    client: {
        sandbox:    '<sandbox_api_ey>',
        production: '<insert production client id>'
    },

    payment: function(data, actions) {
        var amt = $('#total_amount').val();
        return actions.payment.create({
            payment: {
                transactions: [
                    {
                        amount: { total: amt, currency: 'JPY' }
                    }
                ]
            }
        });
    },

    onAuthorize: function(data, actions) {
        return actions.payment.execute().then(function() {
            window.alert('Payment Complete!');
        });
    }

}, '#paypal-button-container');
</script>

正如您从我的代码中看到的那样,我将金额存储在变量 var amt = $('#total_amount').val(); 中然后在 json 中使用该变量。

我的问题是我在控制台中遇到此错误,并且无法打开 paypal 窗口。 enter image description here

它指向货币,但我很确定它是正确的,每当我硬编码它正常运行的数量时。

最佳答案

你可以尝试类似的东西

payment: function (data, actions) {

var x = document.getElementById("total_amount");
var currentVal = x.value;

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

此外,确保在 HTTPS 环境中进行测试

在此处查看完整的工作片段

<iframe width="100%" height="300" src="//jsfiddle.net/vwas4cqj/embedded/" allowfullscreen="allowfullscreen" allowpaymentrequest frameborder="0"></iframe>

关于javascript - Paypal 客户端 REST : dynamic prices,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46203777/

相关文章:

RESTful 多对多可能吗?

javascript - D3 双指缩放在 v5 中不起作用,但在 v4 中有效

php - 我的 sql 查询中的数据未显示

javascript - 格式化 RESTful 数据的正确位置在哪里?

php - 为什么 "?[^a-z\-\+]hit[^a-z\-\+]"与 "hit"不匹配(第一个字符没有空格?)

php - 在自定义帖子类型 (Wordpress/PHP) 中按 "week of"分隔查询结果

json - postman - 如何将全局变量传递到 JSON 正文

javascript - 如何克隆 ES6 类对象构造函数?

javascript - 带有数组的 Angular ng 模型

javascript - 删除事件为 'replace' 的文本