本文章來給大家介紹php ajax實輸入自動搜尋匹配程式碼,希望此款程式對大家所有協助了,第一種方法利用了jquery autocomplete,第二種使用了jquery ajax,其實兩個都差不多。
最簡單的辦法我們就是直接使用jquery autocomplete方法了,如下在執行個體
html中
本文目的是讓 某個標題 帶有 The 的不按字母t首字母搜尋,而是按照第二個文字的首字母搜尋。
比如 The Orbolg, 按T的時候不顯示,按O的時候才顯示。
下面是實現代碼。我自己都暈暈的。測試是沒有問題。
| 代碼如下 |
複製代碼 |
public function gwquery(){ if($_POST){ $zm = $_POST['data']; $wzm = $zm."%"; $b = M('Wpindexgw'); if($zm!="t"){//擷取的首字母不是t的時候 $list1 = $b->where("gwstatus=1 and gwname like '%$zm%'")->order("time desc")->select();//查詢 $narr =array(); foreach( $list1 as $key => $val){ $ct2 = explode(" ",$val['gwname']);//擷取標題拆分成數組。 $szm=strtolower(substr($ct2[1],0,1)); //擷取首字母 並且小寫 if($ct2[0]=="The" && $szm==$zm){//如果第一個字元是The 並且第二個字母首字母和提交的相同,這裡The 區分大小寫。 $narr[] = $val; //寫入數組 } } }else{ //處理首字母是T的時候 ,不希望第一個字數The 的顯示在列表裡。 $list1 = $b->where("gwstatus=1 and gwname like '$wzm'")->order("time desc")->select(); foreach( $list1 as $key => $val){ $ct2 = explode(" ",$val['gwname']); if($ct2[0]=="The"){ $unnarr[] = $key;//擷取合格,要去掉的內容的數組標號。 } } } $list = $b->where("gwstatus=1 and gwname like '$wzm'")->order("time desc")->select();//正常的查詢。 if($zm=="t"){//處理當首字母是t的時候 ,去掉上面查詢得到的內容,也就是如果是The的時候 按T 不顯示。 foreach($unnarr as $uval){ unset($list[$uval]); } }else{//按下的不是t的時候,要把第二個首字母符合的內容添加到正常查詢的數組中。 if(!empty($narr) && !empty($list)){//帶The 的符合條件正常 本身也不空的時候。 $list = array_merge($narr,$list);//合并數組。 }else if(empty($list)){//正常查詢為空白。則看是否有帶The開頭的,有則合并 $list=array(); $list = array_merge($narr,$list); } } if($list){ $this->ajaxReturn($list,'success',1); }else{ $this->error("Bestiary not found."); } } } |
相比之前的代碼:相差太多
| 代碼如下 |
複製代碼 |
public function gwquery1(){//之前備份。。 if($_POST){ $zm = $_POST['data']; $wzm = $zm."%"; $b = M('Wpindexgw'); $list = $b->where("gwstatus=1 and gwname like '$wzm'")->order("time desc")->select(); //dump($list); if($list){ $this->ajaxReturn($list,'success',1); }else{ $this->error("Bestiary not found."); } } } |
http://www.bkjia.com/PHPjc/630707.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/630707.htmlTechArticle本文章來給大家介紹php ajax實輸入自動搜尋匹配程式碼,希望此款程式對大家所有協助了,第一種方法利用了jquery autocomplete,第二種使用了...