php搜索自动联想,自动联想搜索提示功能

var currentUrl = "<?=urldecode(Url::toRoute(['/article/default/index']))?>";

var AutoComplete = "<?=urldecode(Url::toRoute(['/article/default/autocomplete']))?>";

var repositorytypehandle= "<?=urldecode(Url::toRoute(['/article/default/handle']))?>";

:$(".kwarticle").keyup(function (){

var q = $.trim($(".kwarticle").val());

var id="=$id?>"

var pId="=$pId?>"

$('[name="kws"]').val(q);

if (!q) {

$(".choul").css("display", "none");

return false;

}

var data = "&q="+q+"&id="+id+"&pId="+pId;

$.ajax({

url: AutoComplete,

data: data,

type: 'GET',

dataType: 'json',

timeout: 1000,

cache: false,

success: succFunction //鎴愬姛鎵ц鏂规硶

});

function succFunction(tt) {

$(".choul").html('');

var json = eval(tt); //鏁扮粍

// alert(tt);

$.each(json, function (index, item) {

//寰幆鑾峰彇鏁版嵁

var name = json[index].title;

var id = json[index].id;

$(".choul").append("

"+name+"");

});

if (json.length== 1) {

//寰幆鑾峰彇鏁版嵁

var name = json[0].title;

var id = json[0].id;

$('[name="ids"]').val(id);

}

}

$(".choul").css("display", "block");

});

$(document).on("click",".choul li",function  () {

$(".kwarticle").val($(this).text());

$(".choul").css("display", "none");

var selectvalue=$(this).text();

var id=$(this).attr('data');

$('[name="ids"]').val(id);

$('[name="choxq"]').val(selectvalue);

})public functionactionAutocomplete(){$this->layout=false;$q= Yii::$app->request->get('q');//联想输入词$params= Yii::$app->request->get();if(empty($q)){$output=array('status'=>2,'tips'=>'暂无数据','data'=>array(),);echojson_encode($output);exit;}else{$query=Article::find();$query->select('*');if(!empty($params['id'])&&empty($params['pId'])){//取主分类下面的所有子分类文章且不是搜索过来的情况$sonlist=\app\models\RepositoryType::find()->where(['pId'=>$params['id']])->asArray()->all();$arr='';foreach($sonlistas$k=>$v){$arr.=','.$v['id'];}$query->where(['repositoryId'=>explode(',',$arr)]);}elseif(!empty($params['id'])&&!empty($params['pId'])){$query->where(['repositoryId'=>$params['id']]);}$query->andWhere(['isDel'=>2]);$query->orderBy('createTime desc');$query->asArray();$data=$query->all();// $data = Article::find()->where(['like','title',$q])->asArray()->all();if(!empty($data)) {$output=array('status'=>1,'tips'=>'','data'=>$data,);}else{$output=array('status'=>2,'tips'=>'暂无数据','data'=>array(),);}header('Content-Type:application/json; charset=utf-8');exit(json_encode($data,0));}}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值