1

我正在测试 paypal javascript 按钮集成,但按钮数据无法显示。这是我的代码:

var data = {};
data['data-name'] = "donation";
data['data-amount'] = .99;
data['data-env'] = "sandbox";

var button = PAYPAL.apps.ButtonFactory.create("testuser@gmail.com", data, "donate");
$('.paypalbutton').append(button);

捐赠按钮显示正确,但是当我点击它时,贝宝开始屏幕只显示电子邮件,而不是金额或捐赠名称。

感谢您的帮助

4

2 回答 2

1

事实证明,按钮工厂创建函数所期望的 js 对象的格式应该不同(它期望每个参数都是具有 value 属性的自己的对象);

此外,您显然不应该在按钮参数名称前加上“data-”,尽管文档似乎表明了这一点。

不幸的是,这在任何地方都没有记录,我不得不查看 paypal-button.js 文件来弄清楚这一点。

工作代码如下所示:

var DataObject = {}; 

var Name = { "value" : "donation" };
var Amount = { "value" : "1.0" };
var Env = { "value" : "sandbox"};

DataObject["name"] = Name; 
DataObject["amount"] = Amount; 
DataObject["env"] = Env; 

var button = PAYPAL.apps.ButtonFactory.create("testuser@gmail.com", DataObject, "donate");
于 2013-05-15T16:22:07.203 回答
0

我像这样格式化对象:

var raw = { 
        environment: {"value" : "sandbox" },
        name: {"value" : "MindDecoder Credit" },
        amount: {"value" : val },
        tax: {"value" : vat },
        currency: {"value" : "EUR" },
        size: {"value" : "large" },
        lc: {"value" : "de_DE"}
        };

它接缝有点干净。非常感谢您的回答@ilhashev,它帮助了我很多!

于 2013-08-26T21:09:06.397 回答