我创建了一个自动完成ajax搜索网站,该网站自动完成组织名称和地址, 但我希望它验证,当有人搜索组织名称时,地址文本应仅提供自动完成结果 匹配搜索组织名称。
任何人都可以建议我
组织地址ajax:
$addresso=$_GET["term"];
$query=mysql_query("SELECT * FROM sltdb_cddir_content where fulladdress like '%".$addresso."%' AND categories_id=80 order by fulladdress ASC ");
$json=array();
while($display=mysql_fetch_array($query)){
$json[]=array(
'value'=> $display["fulladdress"],
'label'=>$display["fulladdress"]
);
}
组织名称ajax
$searcho=$_GET["term"];
$query=mysql_query("SELECT * FROM sltdb_cddir_content where title like '%".$searcho."%'AND categories_id=80 ");
$json=array();
while($display=mysql_fetch_array($query)){
$json[]=array(
'label'=> $display['title'],
'value' => $display['title'],
);
}
autocomplete jquery:
jQuery.noConflict();
jQuery(function(){
jQuery("#addresso").autocomplete({
source:'<?php echo JURI::root().'modules/mod_jomdirectory_search/tmpl/gov-address.php'; ?>',
minLength:1
});
});
jQuery.noConflict();
jQuery(function(){
jQuery("#searcho").autocomplete({
source:'<?php echo JURI::root().'modules/mod_jomdirectory_search/tmpl/gov.php'; ?>',
minLength:1
});
});
表格:
<input id="searchc" class="ui-autocomplete-input" type="text" name="search" "></input>
注意
我真正想要的是,当有人从组织名称文本框中选择一个值时,地址文本框应该加载与该组织名称相关的自动完成结果。请建议
答案 0 :(得分:0)
对于组织名称
$searcho=$_GET["term"];
$seachArray = explode(',',$searcho);
$q='';
foreach($seachArray as $term){
$q .=" title like '%".trim($searcho)."%' or ";
}
$q =substr($q,0 ,-3);
$query=mysql_query("SELECT * FROM sltdb_cddir_content where ($q) AND categories_id=80 ");
$json=array();
while($display=mysql_fetch_array($query)){
$json[]=array(
'label'=> $display['title'],
'value' => $display['title'],
);
}
在您的评论后编辑
$searcho=$_GET["term"];
$query=mysql_query("SELECT * FROM sltdb_cddir_content where title like '%".$searcho."%'AND categories_id=80 ");
$json=array();
while($display=mysql_fetch_array($query)){
$json[]=array(
'label'=> $display['title'],
'value' => $display['title'],
'address' =>$display['fulladdress'],
);
}
这将在您的结果中包含地址。现在你必须在你的js中工作,如下所示。
jQuery("#searcho").autocomplete({
source:'<?php echo JURI::root().'modules/mod_jomdirectory_search/tmpl/gov.php'; ?>',
minLength:1
select: function (event, ui) {
var address = ui.item.address;
jQuery("#addresso").val(address);
}
});