您好我在结帐页面遇到了一些问题,当我更改页面上的付款方式时,自动提交结帐订单,我想手动使用按钮。我尝试以下代码来禁用ajax调用,但似乎这不是ajax问题。
function script_disabled()
{
wp_dequeue_script( 'wc-checkout' );
}
add_action('wp_enqueue_scripts', 'script_disabled');
答案 0 :(得分:2)
您对问题的描述有些不太恰当。使用单选按钮更改付款方式不应自动提交订单。在我的安装中,此操作仅显示或隐藏付款方式的相应窗格。显示的窗格实际上有提交订单的按钮。下面的代码是用于阻止提交AJAX调用的jQuery事件处理程序。但是,我认为这不是解决您问题的正确方法。您所描述的行为并非WooCommerce结帐页面应如何运作。至少,它在我的安装上没有那样做,这对于结帐页面来说几乎是标准的。
jQuery( 'form.checkout' ).on( 'checkout_place_order', function() {
var $payment_method = jQuery( 'form.checkout input[name="payment_method"]:checked' ).val();
if ( /* your condition, e.g. "$payment_method == 'paypal'" */ ) {
// prevent the submit AJAX call
alert( 'submit cancelled!' );
return false;
}
// allow the submit AJAX call
return true;
});
我不会使用此解决方案,因为我认为其他错误。