Javascript Braeintree客户端使用JS v3-付款方法设置,当前为空,格式为isn';不屈服
我尝试将Braintree集成到我的Laravel 5.2应用程序中,JS v2客户端设置一切正常,但我想将其升级到v3。 这是来自文档(我已经定制了一些):Javascript Braeintree客户端使用JS v3-付款方法设置,当前为空,格式为isn';不屈服,javascript,php,laravel-5.2,braintree,Javascript,Php,Laravel 5.2,Braintree,我尝试将Braintree集成到我的Laravel 5.2应用程序中,JS v2客户端设置一切正常,但我想将其升级到v3。 这是来自文档(我已经定制了一些): 卡号 CVV 到期日期 var authorization='{{$clientToken}}' braintree.client.create({ 授权:授权 },函数(clienter,clientInstance){ if(clienter){ //处理客户端创建中的错误 返回; } braintree.hostedFields.
卡号
CVV
到期日期
var authorization='{{$clientToken}}'
braintree.client.create({
授权:授权
},函数(clienter,clientInstance){
if(clienter){
//处理客户端创建中的错误
返回;
}
braintree.hostedFields.create({
客户:clientInstance,
风格:{
“输入”:{
“字体大小”:“14pt”
},
“输入无效”:{
“颜色”:“红色”
},
“input.valid”:{
“颜色”:“绿色”
}
},
字段:{
编号:{
选择器:“#卡号”,
占位符:“411111111111111111”
},
cvv:{
选择器:“#cvv”,
占位符:“123”
},
截止日期:{
选择器:“#到期日”,
占位符:“2019年10月”
}
}
},函数(hostedFieldsErr,hostedFieldsInstance){
如果(hostedFieldsErr){
//创建托管字段时处理错误
返回;
}
表单.addEventListener('submit',函数(事件){
event.preventDefault();
tokenizer(函数(tokenizeer,有效负载){
if(标记化器){
//托管字段标记化中的句柄错误
返回;
}
document.querySelector('input[name=“payment method nonce”]”)。value=payload.nonce;
表单提交();
});
},假);
});
});
但是,当我单击提交按钮时,什么也没有发生。event.preventDefault()
停止提交,并且生成了payment\u method\u nonce
令牌,但之后我无法提交表单,因为form.submit()
无效
如何在event.preventDefault()之后提交表单?
或者,我如何将支付方法\u nonce
令牌发送给我的控制器
谢谢 当我复制您的代码片段并尝试运行该示例时,我得到了控制台中的(索引):69未捕获引用错误:未定义表单。当我加上
var form = document.getElementById('checkout-form');
效果很好
最好的猜测是,您忘了指定表单变量来引用表单dom元素。如果不是这样,一定要让我知道
var form = document.getElementById('checkout-form');