如何将“+标签:<关键字>”后缀到表单中

How do I postfix '+tag:<keyword>' to a form?

本文关键字:关键字 后缀 表单 标签      更新时间:2023-09-26

我有一个Shopify商店,我想使用搜索表单根据标签进行过滤。根据 Shopify 文档,我必须"在术语前面加上字段名称和冒号,以将该术语的搜索范围缩小到指定字段。

默认搜索表单如下所示:

<form action="/search" method="get" class="search-bar" role="search">
  <input type="hidden" name="type" value="product">
  <input type="search" name="q" value="{{ search.terms | escape }}" placeholder="Zoeken naar..." aria-label="Search all products">
  <button type="submit" class="search-bar--submit icon-fallback-text">
    <span class="icon icon-search" aria-hidden="true"></span>
    <span class="fallback-text">Zoeken</span>
  </button>
</form>

预先搜索celavita时,URL 如下所示:

http://store.<redacted>.com/search?type=product&q=celavita

我想要的是网址的结尾是这样的:

http://store.<redacted>.com/search?type=product&q=celavita+tag:Jumbo

我试过这个:

<form action="/search" method="get" class="search-bar" role="search">
  <input type="hidden" name="type" value="product">
  <input type="search" name="q" value="{{ search.terms | escape }}" placeholder="Zoeken naar..." aria-label="Search all products">
  <input type="hidden" name="tag" value="Jumbo">
  <button type="submit" class="search-bar--submit icon-fallback-text">
    <span class="icon icon-search" aria-hidden="true"></span>
    <span class="fallback-text">Zoeken</span>
  </button>
</form>

但这会导致 url 如下所示:

http://store.<redacted>.com/search?type=product&q=celavita&tag=Jumbo

接下来我可以尝试什么?这可以使用JavaScript/jQuery来完成吗?

使用 jquery,你可以做这样的事情。(未经测试)

$(".search-bar").submit(function(){
var type=$("input[name='type']").val();
var q=$("input[name='q']").val();
var tag=$("input[name='tag']").val();
var url="http://store.<redacted>.com/search?type="+type+"&q="+q+"+tag:"+tag;
window.location = url;
return false;
});