小编Col*_*per的帖子

当条带验证失败时,提交按钮不会重新启用

当使用 JQuery/AJAX/JS 提交 form_for() 表单时,提交按钮无法重新启用,即使我编写了将 prop 切换为禁用 false 的代码。

我在控制台中成功激活了相同的JS行代码,但是当条带验证正常失败时它不起作用。

var StripepayOnestepSubscriptionForm = {
   initialize: function () {
    $(document).off('submit.stripepay-onestep-subscription-form').on(
        'submit.stripepay-onestep-subscription-form', '.stripepay-onestep-subscription-form',
        function () {
            return StripepayOnestepSubscriptionForm.handleSubmit($(this));
        }
    );
},

handleSubmit: function (form) {
    if (!StripepayOnestepSubscriptionForm.validateForm(form)) {
        return false;
    }

    $(form).find('div :submit')
        .prop('disabled', true).change();
    $('.stripepay-spinner').css('visibility', 'visible');

    Stripe.card.createToken(form, function (status, response) {
        StripepayOnestepSubscriptionForm.stripeResponseHandler(form, status, response);
    });
    return false;
},

validateForm: function (form) {
    var cardNumber = $("input[data-stripe='number']").val();
    if (!Stripe.card.validateCardNumber(cardNumber)) {
        StripepayOnestepSubscriptionForm.showError(form, 'The card number is not a valid credit card number.');
        return …
Run Code Online (Sandbox Code Playgroud)

javascript jquery ruby-on-rails stripe-payments

4
推荐指数
1
解决办法
847
查看次数