我的网站上有一个简单的付款方式,可以选择使用paypal快速结账付款。 我的表单的其余部分通过jquery验证进行验证。
如何在单击paypal按钮时进行设置,它应该在允许paypal弹出窗口打开之前验证表单?
$("#form1").validate();
我有一个简单的paypal渲染脚本
<script>
paypal.Button.render({ ...
在paypal文档中,他们提供了类似的内容,但我不知道如何结合2
validate: function(actions) {
.....
},
答案 0 :(得分:2)
这里有一个完整的例子:
https://developer.paypal.com/demo/checkout/#/pattern/validation
在validate()函数中,您需要侦听表单更改并启用/禁用按钮。
答案 1 :(得分:1)
PayPal新API允许以这种方式验证表单,而无需使用onInit函数):
paypal
.Buttons({
// Run when the user click on the paypal button
onClick: function(data, actions) {
// My validation...
url = searchInput.value
// My validation Function...
const isURL = validURL(url)
if (isURL) {
// Remove Existing Error message
if (searchError.classList[2]) {
searchError.classList.remove('err-message--show')
}
// Enable The Paypal Button
return true
} else {
// Add Error messages
searchError.classList.add('err-message--show')
// The paypak wont continue to the paypal page...
return false
}
},
createOrder: function(data, actions) {
return actions.order.create({
purchase_units: [
{
amount: {
value: price,
currency_code: 'ILS'
}
}
]
})
}
.render('#paypal-button-container')
还有onApproval和onError函数...(处理PayPal流程的结果...)
希望我能帮上忙, Naveh