处理付款方式更改事件

时间:2019-01-21 10:34:43

标签: jquery wordpress woocommerce

我正在自定义woocommerce结帐页面,我添加了另一种付款方式,我希望当用户更改付款方式时,运费将根据新的付款方式更改为,我的问题是复选框更改事件未触发,这是首页结帐页面的图片
checkout page

我已经创建了一个更改运费的jquery函数,并且添加了一个jquery代码以观看付款事件的更改

$('input[name=payment_method]').change(function(e){
    update_shipping("test");
})

这是更新运输功能

function update_shipping(billingstate)
{

    if ( xhr ) xhr.abort();

    $( '#order_methods, #order_review' ).block({
        message: null,
        overlayCSS: { background: '#fff url(' + wc_checkout_params.ajax_loader_url + ') no-repeat center',
        backgroundSize:'16px 16px',
        opacity: 0.6
        }
    });

    var data = {

        action: 'woocommerce_update_order_review',

        security: wc_checkout_params.update_order_review_nonce,

        billing_state: billingstate,

        post_data: $( 'form.checkout' ).serialize()

    };

    xhr = $.ajax({

        type: 'POST',

        url: wc_checkout_params.ajax_url,

        data: data,

        success: function( response ) {

            var order_output = $(response);

            $('.wrap-review-order').hide();
            $( '#order_review' ).html(
                response['fragments']['.woocommerce-checkout-review-order-table']+
                response['fragments']['.woocommerce-checkout-payment']);

            $('body').trigger('updated_checkout');

        },

        error: function(code){

            console.log('ERROR');

        }

    });

}

jQuery('#billing_state').change(function(e, params){

    update_shipping(jQuery(this).val());
    $('#billing_city').val('');
    $('#billing_address_1').val('');

});

});

但是当我更改付款时,我没有使用控制台日志进行过测试,也没有在控制台中打印任何内容,因此我认为该事件未触发 注意:我确定选择器,因为我已经尝试了很多次了:(

0 个答案:

没有答案