【发布时间】:2020-06-03 21:05:59
【问题描述】:
我对 shopify、liquid 以及它附带的所有东西都很陌生。
我尝试在 shopify 上实现预测性搜索,但我只是不知道为什么我什至没有收到以下代码中的 Ajax 调用警报。我把它放在我的“theme.liquid”文件中,就在结束体标签的正上方。我想如果它可以工作,打开页面时应该有警报,不是吗? Goki 是一个供应商,当我在我的页面上搜索时会显示许多产品。我的代码如下所示:
<script>
jQuery.getJSON("/search/suggest.json", {
"q": "goki",
"resources": {
"type": "product",
"limit": 4,
"options": {
"unavailable_products": "last",
"fields": "title,product_type,variants.title"
}
}
}).done(function(response) {
var productSuggestions = response.resources.results.products;
if (productSuggestions.length > 0) {
var firstProductSuggestion = productSuggestions[0];
alert("The title of the first product suggestion is: " + firstProductSuggestion.title);
}
});
</script>
非常感谢任何帮助!谢谢!
【问题讨论】:
-
确保在执行此脚本之前已加载 jQuery。另外,检查它是否返回任何结果,因为它似乎没有。您的 Shopify 商店是否在线可用?
-
@Vladimir 谢谢你的回答!是的,它可以在线获得,menschenskinder-shop.de 使用 vuffey 作为密码。我试图实现
-
如果我检查下面的代码,我会看到警报“是的”。所以我猜JQuery正确加载了吗? if (window.jQuery) { // jQuery 已加载 alert("Yeah!"); } else { // jQuery 未加载 alert("Doesn't Work"); }
-
这很奇怪。一开始就在getJSON之后执行“search/suggest.json”似乎是一个问题。或者它是关于术语本身的创建,因为在工作搜索 url 中必须有“?q =”和“&”,也许它不是自动创建的?如果我手动创建 url 它正在工作,那么它看起来像这样: var q = 'goki' var url2 = '&resources[type]=product,collection' 最后是 getJSON({ 'url': "/search/suggest.json ?q=" + q + url2, ... 有什么想法吗?
-
您可以发布您的解决方案作为答案吗?