由于一页支付插件接管了ZenCart的支付流程,导致用户选择的信用卡类型无法提交到ZenCart支付流程中去。

解决方法:编辑one_page_checkout.js文件,在[ajaxLoadOrderReview]函数中提交[alipayCardType]的逻辑,代码如下:


    ajaxLoadOrderReview: function(target) {
        var $_0o0 = this;
        $(target).attr('disabled', true);
        $_0o0.showLoadingMask();
        var data = {
            act: 'set_payment_method',
            securityToken: this.config.securityToken,
            payment: $('#checkout-step-payment>#checkoutPayment input[name="payment"]:checked').val(),
            alipayCardType: $('#checkout-step-payment>#checkoutPayment input[name="alipayCardType"]:checked').val(),
            comments: $('#checkout-step-payment>#checkoutPayment textarea[name="comments"]').val(),
            action: 'submit'
        };

包含alipayCardType的那一行代码是新增的。