php+ajaxリアルタイム入力自動検索マッチング方式、ajax自動検索
この記事の例では、php+ajax 実入力の自動検索とマッチング方法を説明し、参考のために皆さんと共有します。具体的な分析は次のとおりです:
最初の方法は jquery autocomplete を使用し、2 番目の方法は jquery ajax を使用します。実際、どちらもほぼ同じです。
最も簡単な方法は、以下の例に示すように、jquery autocomplete メソッドを直接使用することです。
HTMLのコードは次のとおりです:
コードをコピーします コードは次のとおりです:
<スクリプトタイプ="text/javascript">
$(関数(){
$("#abcc").bigAutocomplete({width:176,data:[{title:"埠頭世紀タワー",result:"5976898"},{title:"埠頭王の印章",result:"5976896 "}, {title:"舟山朱家尖東沙リゾート",result:"5976895"},{title:"広沙天都城ジャズガーデン",result:"5976893"},{title:"グリーンタウン ジェイド ガーデン", result:"5976892"}, {title:"江南明楼",result:"5976890"},{title:"Shimao Riverside Garden",result:"14869"}],callback:function(data){
$("#s_loupan").val(data.result);
}});
})
スクリプト>
この記事の目的は、The を含むタイトルを、文字 t の最初の文字ではなく、2 番目のテキストの最初の文字で検索できるようにすることです。
例えば、Tを押すとOrbolgが表示されますが、Oを押すと表示されます。 以下は私自身がめまいを起こしている実装コードです。 コードは次のとおりです。
コードをコピーします
コードは次のとおりです:
パブリック関数 gwquery(){
If($_POST){
$zm = $_POST['データ']
$wzm = $zm."%";
$b = M('Wpindexgw');
If($zm!="t"){//取得した最初の文字が t ではない場合
$list1 = $b->where("gwstatus=1 and gwname like '%$zm%'")->order("time desc")->select();//クエリ
$narr =配列();
foreach( $list1 as $key => $val){
$ct2 =explode(" ",$val['gwname']);//タイトルを取得し、配列に分割します。
$szm=strto lower(substr($ct2[1],0,1)) //最初の文字と小文字を取得します
If($ct2[0]=="The" && $szm==$zm){//最初の文字が The で、2 番目の文字の最初の文字が送信されたものと同じである場合、ここでは大文字と小文字が区別されます。
$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]=="その"){
$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 以外を押すと、最初の文字が 2 番目の文字と一致するコンテンツを通常のクエリ配列に追加します。
If(!emptyempty($narr) && !emptyempty($list)){//The の状態は正常であり、空ではありません。
$list = array_merge($narr,$list);// 配列をマージします。
}else if(emptyempty($list)){//通常のクエリは空です。次に、「The」で始まるものがあるかどうかを確認し、あればそれをマージします
$リスト=配列();
$list = array_merge($narr,$list); $list = array_merge($narr,$list);
}
}
If($list){
$this->ajaxReturn($list,'success',1);
}その他{
$this->error("動物日記が見つかりません。");
}
}
前のコードと比較すると、違いが多すぎます。コードは次のとおりです。
コードをコピーします
コードは次のとおりです:
public function gwquery1(){//以前にバックアップします。 。
If($_POST){
$zm = $_POST['データ']
$wzm = $zm."%";
$b = M('Wpindexgw');
$list = $b->where("gwstatus=1 および gwname like '$wzm'")->order("time desc")->select();
//ダンプ($list)
If($list){
$this->ajaxReturn($list,'success',1);
}その他{
$this->error("獣寓話が見つかりません。");
}
}
この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。
http://www.bkjia.com/PHPjc/933607.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/933607.html技術記事 php+ajax リアルタイム入力自動検索・照合方法、ajax 自動検索 この記事では、php+ajax リアルタイム入力自動検索・照合方法について説明し、皆さんに共有しますので、参考にしてください。具体的な分析は以下の通りです...