Stripe checkout
未验证required
输入字段。
必填字段:
<input type="tel" name="appointment[patient_phone]" id="appointment_patient_phone" required="required" placeholder="Phone Number">
点击stripe
按钮后,系统会显示stripe checkout popup
,且表单未经过验证。
所以我尝试添加了一个自定义验证器,但stopPropagation
无效,因为在stripe checkout popup
和alert
被调用后仍然会弹出stopPropagation
function validateAppointmentForm() {
var validateForm = function(event) {
debugger;
var phone = $('#appointment_patient_phone').val();
if (!phone) {
alert("Phone number is required.");
event.preventDefault();
event.stopPropagation();
}
}
var watchStripeButton = function() {
debugger;
$("#new-appt-stripe-button").on("click", validateForm);
}
debugger;
watchStripeButton();
}
;
答案 0 :(得分:1)
您应该在此处使用Custom Checkout。这允许您在打开Checkout之前拥有自己的按钮并在表单中添加验证。
当客户点击您的按钮付款并输入他的卡详细信息时,您将检测到某些字段未正确填充或具有无效值并显示错误。如果表单有效,则可以在点击处理程序中调用handler.open()
。