首页

源码搜藏网

首页 > 开发教程 > dede教程 >

dedecms织梦使用ajax实现搜索下拉提示功能

创建时间:2017-08-01 10:08  

这个功能主要实现的是用户在搜索的时候输入关键字,然后会出现下拉菜单,下拉菜单中出现的是站内所有包含这个关键字的文章的标题共用户选择,相对DedeCMS原生的搜索这个功能实用一点,既增加了用户体验,也可以让用户快速的找到想要的东西。功能基于php+jquery来实现,参考autocomplete,

打开你的网站首页模板,在</head>之前加入

01 <script language="javascript" type="text/javascript" src="{dede:global.cfg_templets_skin/}/js/jquery-1.7.1.min.js"></script>
02 <script type="text/javascript">  
03  function lookup(inputString) {       
04 if(inputString.length == 0)
05 {           
06 // Hide the suggestion box.           
07 $('#suggestions').hide();       
08 }
09 else
10 {           
11 $.post("/plus/search_list.php", {queryString: ""+inputString+""},function(data)
12 {
13                if(data.length >0)
14 {                   
15 $('#suggestions').show();                   
16 $('#autoSuggestionsList').html(data);              
17  }           
18 });       
19 }   
20 } // lookup       
21 function fill(thisValue) {       
22 $('#inputString').val(thisValue);       
23 setTimeout("$('#suggestions').hide();", 200);   
24 }
25  </script>

jquery-1.7.1.min.js这个jquery库需要你自己下载,这里就不多说了。本人用的是这个版本的。
 

这段代码中的search_list.php就是本文下载的文件,下载后放入/plus目录下。

打开head.htm,找到搜索部分的from表单代码修改为
 

1 <form name="formsearch" action="{dede:global.cfg_cmsurl/}/plus/search.php"id="formkeyword">
2     <label for="header-subscribe-email" class="text"></label><inputtype="hidden" name="kwtype" value="0"/><input type="text" name="q" size="24"value="在这里搜索..." onfocus="if(this.value=='在这里搜索...'){this.value='';}"onblur="if(this.value==''){this.value='在这里搜索...';}" id="inputString"onkeyup="lookup(this.value);" onblur="fill();" class="f-text"><inputtype="submit" class="commit" value="搜索"/>
3     <div class="suggestionsBox" id="suggestions" style="display: none;">
4         <div class="suggestionList">
5             <ul id="autoSuggestionsList">
6             </ul>
7         </div>
8     </div>
9 </form>

这部分可以根据你自己的代码的实际情况具体修改,主要是输入关键字的input和下边加的DIV层。

打开你自己的样式表css文件,在最后加入

查看源码
 
打印代码帮助
01 .suggestionsBox {
02     position: relative;
03     left: 0px;
04     width: 250px;
05     background: white;
06     border: 1px solid #dcdcdc;
07     color: #323232;
08     z-index: 999;
09 }
10  
11 .suggestionList {
12     margin: 0px;
13     padding: 0px;
14 }
15  
16 .suggestionList li {
17     margin: 0px 0px 3px 0px;
18     position: relative;
19     padding: 3px;
20     cursor: pointer;
21     list-style: none;
22     padding-left: 5px;
23     height: 20px;
24     overflow: hidden
25 }
26  
27 .suggestionList li:hover {
28     background-color: #659CD8;
29 }
30  
31 .jr {
32     position: absolute;
33     top: 9px;
34     right: -5px
35 }


到这添加的代码就完了,然后下载search_list.rar,下载后解压得search_list.php到放入/plus目录下。在这个文件里有详细注解。可根据实际情况调整。所有结果都是由这个文件来返回的。最后去前台试试您的效果把。
上一篇:织梦DEDECMS网站只搜索指定栏目文章或者某一内容模型的办法
下一篇:织梦dedecms添加自定义文档属性的方法

相关内容

热门推荐

    /