我想知道是否可以使用自定义表单进行braintree支付集成。根据自定义我的意思是这样的:
<form id="payment-form" method="post" action="/checkout.php">
<div id="customField>{$customField;}</div>
<div id="customField2>{$customField2;}</div>
<input type="submit" value="PAY">
</form>
<script src="https://js.braintreegateway.com/js/braintree-2.31.0.min.js"></script>
<script>
var clientToken = "";
braintree.setup("clientToken", "dropin", {
container: "payment-form"
});
</script>
我想将自定义字段发布到checkout.php,但似乎表单只返回付款方式nonce。我也不想在braintree的保险库中存储任何这些自定义值。 Checkout.php只是将所有值(包括收到的付款方式nonce)从数组中的先前表单添加到一起,并将这些值传递给.NET服务器。那么有没有办法将这些值传递给checkout.php?
答案 0 :(得分:1)
看起来使用Braintree's Custom Fields
肯定是可行的看起来,根据您的Braintree.setup,您没有正确格式化表单以填充Drop-In。您在braintree.setup中指定的容器将与div元素相关联,而div元素又是完整付款表单的ID。
所以,如果你的表格看起来像;
<form>
<div id="dropin-container"></div>
</form>
,你想要你的braintree.setup看起来像;
braintree.setup('CLIENT-TOKEN-FROM-SERVER', 'dropin', {container: 'dropin-container'});
将DIV“dropin-container”转换为Drop In。
自定义字段可以包含在表单中,但是您只想使它们只是HTML输入元素,而不是div元素,它们将与nonce一起返回到您的服务器。
希望这有帮助!