条带结帐不验证必填字段

时间:2016-03-11 01:48:32

标签: javascript jquery validation stripe-payments

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 popupalert被调用后仍然会弹出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();

}
;

1 个答案:

答案 0 :(得分:1)

您应该在此处使用Custom Checkout。这允许您在打开Checkout之前拥有自己的按钮并在表单中添加验证。

当客户点击您的按钮付款并输入他的卡详细信息时,您将检测到某些字段未正确填充或具有无效值并显示错误。如果表单有效,则可以在点击处理程序中调用handler.open()