我正在测试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);
捐赠按钮正确显示,但是当我点击它时,paypal开始屏幕只显示电子邮件,而不是金额或捐赠名称。
感谢您的帮助
答案 0 :(得分: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");
答案 1 :(得分: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,它对我有所帮助!