首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Javascript单击not loading结帐页面

Javascript单击not loading结帐页面
EN

Stack Overflow用户
提问于 2019-12-06 17:40:01
回答 2查看 517关注 0票数 1

在下面的代码中,我的按钮单击起作用了。产品将添加到购物车中。但我必须手动重新加载页面,才能将woocommerce_checkout加载到页面(同一页面)。

我尝试了location.reload,并尝试重定向到另一个页面,在那里我也有woocommerce_checkout快捷代码,但似乎什么都不起作用。感谢所有的帮助。

代码语言:javascript
复制
    jQuery('#submitproject').on('click', function () {
    jQuery.post({
        dataType: 'json',
        url: '/wp-admin/admin-ajax.php?action=wc_woocommerce_clear_cart_url',
        data: {
            action: 'wc_woocommerce_clear_cart_url'
        },
        success: function (data) {
            if (data.status != 'success')
                alert(data.msg);

            else
            {

                var numeroproduit = idproduit;
                console.log(numeroproduit);//15
                jQuery.get('/?post_type=product&add-to-cart='+numeroproduit, function () {});
                console.log("produit rajout");
                // window.location.href = "/paiement-projet";
                // location.reload();
                jQuery('#monpaiement').show();
                //jQuery('#mesinfos').hide();
                //jQuery('#monprojet').hide();
                //jQuery("#monpaiement").slideToggle();
                //jQuery('#submitproject').toggleClass('opened closed');
                console.log("after click success");

            }
        }

    });
});

修改后的代码尝试使用Axelle的解决方案:

代码语言:javascript
复制
    jQuery('#submitproject').on('click', function () {
    jQuery.post({
        dataType: 'json',
        url: '/wp-admin/admin-ajax.php',
        data: {
            action: ''
        },
        success: function (data) {
            if (data.status != 'success')
                alert(data.msg);

            else
            {

                var numeroproduit = idproduit;
                console.log(numeroproduit);//15
                jQuery.get('/?post_type=product&add-to-cart='+numeroproduit, function () {});
                console.log("produit rajout");
                //window.location.href = '/?post_type=product&add-to-cart'=+numeroproduit;
                // location.reload();
                window.location.reload(true);
                jQuery('#monpaiement').show();
                //jQuery('#mesinfos').hide();
                //jQuery('#monprojet').hide();
                //jQuery("#monpaiement").slideToggle();
                //jQuery('#submitproject').toggleClass('opened closed');
                console.log("after click success");

            }
        }

    });
});

如您所见,我修改了url以不使用操作钩子,并添加了页面刷新javascript。

不,不显示结帐。上面的新代码。此代码包含在document.ready函数中。更正,新代码不起作用。它不接受url aadmin-ajax.php。收到错误的请求警报。抱歉的。

EN

回答 2

Stack Overflow用户

发布于 2019-12-07 02:54:47

下面是正确的代码。谢谢你的帮助。

代码语言:javascript
复制
jQuery('#submitproject').on('click', function () {
    jQuery.post({
        dataType: 'json',
        url: '/wp-admin/admin-ajax.php?action=wc_woocommerce_clear_cart_url',
        data: {
            action: 'wc_woocommerce_clear_cart_url'
        },
        success: function (data) {
            if (data.status != 'success')
                alert(data.msg);

            else
            {

                var numeroproduit = idproduit;
                console.log(numeroproduit);//15
                jQuery.get('/?post_type=product&add-to-cart='+numeroproduit, function () {});
                console.log("produit rajout");
                window.location.href = '/?post_type=product&add-to-cart='+numeroproduit;
                jQuery('#monpaiement').show();
                jQuery('#mesinfos').hide();
                jQuery('#monprojet').hide();
                jQuery("#monpaiement").slideToggle();
                jQuery('#submitproject').toggleClass('opened closed');
                console.log("after click success");

            }
        }

    });
});

正如您所看到的,我对get url执行了一个window.location.href,这会将我不刷新地发送到结帐页面,商品就在购物车中。

票数 0
EN

Stack Overflow用户

发布于 2021-05-03 13:23:28

此页可能无法加载woocommerce结帐脚本,

通过这两种方法,您可以添加脚本以在自定义结帐页面上启用js事件

  1. 添加wp_enqueue_script( 'wc-checkout' );

添加add_filter( 'woocommerce_is_checkout', '__return_true')

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59210469

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档