多个Braintree“托管字段”表单在一个页面上

时间:2017-01-02 22:49:43

标签: javascript braintree

在我的应用中,我有多种形式(在我的情况下为2)。我需要在每个表单中使用braintree托管字段。我的所有字段都有[data-braintree-card-number]之类的选择器。由于我对此表单使用partial,因此它们对托管字段具有相同的选择器。我试过使用像#form_id [data-braintree-card-number]这样的选择器,但它不是有效的css选择器。在braintree的v2版本中,表单有id选项,不确定它是否能解决我的问题。页面上有一个表格,一切正常。

如何在一个页面上使用braintree托管字段设置多个表单? 提前谢谢!

1 个答案:

答案 0 :(得分:1)

完全披露:我在Braintree工作。如果您有任何其他问题,请随时联系support

可以在同一页面上以多种形式使用Braintree的javascript SDK,但需要一些设置工作。

Braintree不支持同时使用braintree个对象的多个不同实例。换句话说,在页面上使用braintree的多个并发实例可能会导致不可预测的行为。要在同一页面上使用具有多个表单的Braintree,您应该使用javascript SDK中的teardown功能,该功能会从页面中删除现有的braintree对象。一旦先前的集成消失,您可以再次初始化Braintree而不会出现问题。

Braintree SDK一次只能看到一个表单,因此您需要一种选择使用哪种表单进行实例化的方法。如果您的客户想要支付的表单发生更改,您将不得不拆除之前的Braintree初始化并使用新表单重新初始化它。通过初始化和拆除每个表单的braintree集成,您可以在同一页面上使用具有多个表单的Braintree。