Javascript 在Safari上未调用beforeSubmit上的jquery

Javascript 在Safari上未调用beforeSubmit上的jquery,javascript,jquery,safari,stripe-payments,Javascript,Jquery,Safari,Stripe Payments,我已经创建了一个带条带的支付表单,它需要与它们的API交互,以便在提交表单之前获得令牌。所有的东西都在Chrome中进行了测试,但昨天一位用户说它在Safari中不起作用 我已经能够缩小Safari在执行以下代码之前提交表单的原因: $('#payment-form').on('beforeSubmit', function(event) { if (isCcNeeded()) { // Disable t

我已经创建了一个带条带的支付表单,它需要与它们的API交互,以便在提交表单之前获得令牌。所有的东西都在Chrome中进行了测试,但昨天一位用户说它在Safari中不起作用

我已经能够缩小Safari在执行以下代码之前提交表单的原因:

$('#payment-form').on('beforeSubmit', function(event) {
                    if (isCcNeeded()) {

                        // Disable the submit button to prevent repeated clicks:
                        $('#payment-form').find('.submit').prop('disabled', true);

                        // Request a token from Stripe:
                        Stripe.card.createToken({
                                number: $('input#stripe-card-number').val(),
                                cvc: $('input#stripe-cvc').val(),
                                exp_month: getExpMonth(),
                                exp_year: getExpYear(),
                                address_zip: $('input#stripe-address-zip').val()
                        }, stripeResponseHandler);

                        // Prevent the form from being submitted:
                        return false;
                    }
                });

有人知道为什么跳过这个吗?

好的!因此,解决方案实际上是我正在尝试的一些事情的组合。正如我在原始帖子中的评论所述,我首先需要改为使用“提交”,而不是“提交前”(我认为这是一个Yii2特有的东西)

然而,我不得不更进一步。为了让它真正工作,我还必须对事件调用preventDefault()

在我处理这些代码时,我也从stripe.jsv2迁移到了v3,所以我不确定这是否有帮助

最后的解决办法是

            var form = document.getElementById('payment-form');
            $('#payment-form').on('submit', function(e) {
                e.preventDefault();
                createToken();
            });

谢谢大家的帮助

你能用submit和test更改beforeSubmit吗?为什么要在beforeSubmit之前打电话?如果createToken调用为successfull@gaetanoM,我也尝试过将('beforesmit',函数(event)替换为$('beforesmit')。submit(函数(event)和('submit',函数(event')。on('submit',函数(event)两者都有相同的结果。我想第二次尝试在“提交”上使用——如果你尝试这样的东西,它对你有用吗?