mmenu搜索触发网站(全局)搜索

时间:2018-05-23 07:21:23

标签: javascript jquery search mmenu

我想知道mmenu中的搜索是否可以触发网站搜索,而不仅仅是返回菜单中的项目?

结果不需要显示在菜单中,但按Enter键或点击/点按搜索按钮会提交全球网站搜索并重定向到/search

这可能吗?我确定我已经在某个地方见过它,但我无法找到它。我想改变提交按钮的功能需要一些jQuery吗?

我不确定它是否重要,但这将在Shopify网站上,并且标题中有一个搜索表单,标记如下:

<form action="/search" method="get" role="search" class="search"> 
    <input type="search" 
           name="q" 
           id="Search" 
           class="text-input search__input" 
           value="" 
           placeholder="Search"> 
    <button type="submit" class="search__btn"> 
        <svg class="icon icon--search"><use xlink:href="#icon-search"></use></svg>  
    </button> 
 </form>

1 个答案:

答案 0 :(得分:1)

这里有几个场景

允许重新加载页面

这是最简单的方案,如果允许页面重新加载,您的表单将提交给search?q=some search,这应该是服务器的有效路径,然后您可以根据?q=some search获取结果并将其呈现在你的前端

不允许重新加载页面时

这可能相对比较棘手,实现将取决于您正在处理的前端框架,但粗略的实现将类似于

  • 您将onFormSubmit事件绑定到您的表单
  • 当表单提交时,您将阻止表单提交并阅读q参数
  • 您将通过使用参数/search
  • 重定向到q页面来更改应用程序的状态
  • 负责/search的组件/页面将启动搜索结果请求