联系官方销售客服

1835022288

028-61286886

分享经验 版主:论坛审计组
在任意页面、任意位置,通过Ajax处理搜索框,不跳转获取搜索结果
类型:迅睿CMS 更新时间:2024-03-08 14:17:13 搜索关键词 return

简单粗暴:在任意页面、任意位置,通过Ajax处理搜索框,不跳转获取搜索结果


再通过Jquery直接Append到自己想要的位置。


思路:


创建一个只有(搜索结果)的search.html模板,里面还按照正常的搜索结果标签写法正常写就行。

注意:不需要有其它的header和footer还有页面中其它的html代码。因为我们只需要这一部分就可以了。

{search module=MOD_DIR id=$searchid total=$sototal order=$params.order catid=$catid page=1 pagesize=5000 urlrule=$urlrule return=rs}
<li>
  <div class="shang">{$rs.title}</div>
  <div class="xia">{$rs.description}</div>
</li>
{/search}

在任意位置的搜索框(搜索按钮)上面绑定JS事件

<script>
$(document).ready(function () {
    $(".search_btn").click(function(){
      var keyword = $(".search_text").val();
      if(keyword == ''){
        layer.msg('请输入搜索关键词',{time:1000});
        $(".search_text").focus();
        return false;
      }else{
        $.ajax({
           type: "GET",
           url: "index.php?s=shop&c=search&catid=15&keyword="+keyword+"&ajax_page=search.html",
           dataType: "text",
           success: function(html){
            $("#content_list").html(html);
          }
       });
      }
    });
});
</script>

就这样就可以了。Ajax成功后的html其实就是你search.html模板里面的内容。直接显示在对应的位置(一般是搜索框下面)即可。


就是这么简单粗暴。太复杂的咱也不会。