Ajax 400在Wordpress / Woocommerce中的错误请求

时间:2018-11-27 12:36:07

标签: php ajax wordpress woocommerce

我正在尝试在“添加到购物车”按钮上的woocommerce单一产品页面上使ajax正常工作,并且似乎是第一个障碍。

我的代码如下:

(function ($) {
$(document).on('click', '.single_add_to_cart_button', function (e) {
    e.preventDefault();

    var str = "yadda yadda yadda";
    $.ajax({
        type: "post",
        // url: 'http://localhost/all_projects/wordpress/mapchest_w4/wp-admin/admin-ajax.php', // - same problem
        url: wc_add_to_cart_params.ajax_url,
        data: str,
        contentType: "application/x-www-form-urlencoded; charset=UTF-8",
        dataType: "text",
        success: function (msg) {
           //do something
           console.log("success");
           console.log(msg);
        },
        error: function (errormessage) {
            //do something else
            console.log("error");
            console.log(errormessage);
        }
    });

    return false;
});
})(jQuery);

脚本排队如下:

wp_enqueue_script( 'ajax-add-to-cart', get_template_directory_uri() . '/assets/js/ajax-add-to-cart.js', array(), null, 'all');

以上内容返回:     jquery.min.js:2 POST http://localhost/all_projects/wordpress/mapchest_w4/wp-admin/admin-ajax.php 400(错误请求)

和:     {readyState:4,setRequestHeader:ƒ,getAllResponseHeaders:ƒ,getResponseHeader:ƒ,overrideMimeType:ƒ,...}

有趣的是,如果我将URL更改为其他名称,例如产品的硬编码URL,我会收到一条成功消息,因此问题出在:     wc_add_to_cart_params.ajax_url

有什么显而易见的东西吗?

0 个答案:

没有答案