首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Ajax向Shopify的/cart/add.js发出请求,总是返回错误回调函数

Ajax向Shopify的/cart/add.js发出请求,总是返回错误回调函数
EN

Stack Overflow用户
提问于 2017-02-01 08:46:21
回答 2查看 4.2K关注 0票数 0
代码语言:javascript
运行
复制
$.ajax({
                                    type: 'POST',
                                    url: '/cart/add.js',
                                    data: {
                                        quantity: 1,
                                        id: form_data
                                    },
                                    success: function(response) {
                                        console.log('in success');
                                        var url = $("#af-btn").attr("href");

                                        window.location.href = $("#af-btn").attr("href");
                                    },
                                    error: function(response) {
                                        console.log(response + "in error");
                                        var url = $("#af-btn").attr("href");

                                        //window.location.href = $("#af-btn").attr("href");

                                    },
                                    complete: function(response) {
                                        console.log(response);
                                    }
                                });

上面是我的AJAX请求。下面是响应对象。

添加到购物车显示匿名行为,有时产品被添加,有时产品没有被添加。我想不出来。有什么想法吗?

下面是form_data

我如何找回它的价值,

代码语言:javascript
运行
复制
var form_data = $('form[action="/cart/add"]').find('select[name="id"]').find(":selected").val();
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-09-30 10:52:10

我就是这样解决这个问题的,因为我在Shopify应用程序中使用了Shopify Ajax,它的脚本是通过Shopify Admin添加的。

1- Load Shopify jQuery Ajax Api包装器

代码语言:javascript
运行
复制
function loadShopifyAjaxApiScript()
{

var script = document.createElement("script");
script.rel = "text/javascript";
script.src = "https://cdn.shopify.com/s/assets/themes_support/api.jquery-0ea851da22ae87c0290f4eeb24bc8b513ca182f3eb721d147c009ae0f5ce14f9.js";
document.getElementsByTagName("head")[0].appendChild(script);

}

2-然后按如下方式使用:

代码语言:javascript
运行
复制
            Shopify.addItem(variantId , 1 , function () {
            console.log('success');
        });

资源链接:沙箱

票数 0
EN

Stack Overflow用户

发布于 2017-02-02 07:14:19

标准的AJAX调用在一个实例中也为我抛出了错误(甚至认为产品包含在购物车中)。

因此,我将他们的API用于AJAX调用。下面是指向所有函数的链接:http://mayert-douglas4935.myshopify.com/pages/api

例如,添加项目很容易,因为:

代码语言:javascript
运行
复制
  Shopify.addItem($productVal, $productQTY, function(){
    // Do Something here once the product is added
    console.log('Success!!!')
  });

PS:

请记住,为了访问调用,需要包含此脚本:

代码语言:javascript
运行
复制
{{ 'api.jquery.js' | shopify_asset_url | script_tag }}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41975368

复制
相关文章

相似问题

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