本文实例讲述了ThinkPHP实现ajax仿官网搜索功能的方法。分享给大家供大家参考。
具体实现方法如下:
后台代码:
//搜索,如果在1不在0
function search(){
$keyword = $_POST[\'search\'];
$Goods=M(\'goods\');
//这里我做的一个模糊查询到名字或者对应的id,主要目的因为我这个系统是
//商城系统里面用到直接看产品ID
$map[\'goods_id|goods_name\'] = array(\'like\',\'%\'.$keyword.\'%\');
// 把查询条件传入查询方法
if($goods=$Goods->where($map)->select())
{
$this->ajaxReturn($goods,\'查询成功!\',1);
}else{
$this->ajaxReturn($data,\"查询失败,数据不存在!\",0);
}
}
前端代码:
$(document).ready(function(){
$(\".show_message\").hide();
var $search=$(\'#search_box\');
$(\"#submit_from\").click(function(){
if($(\"#search_box\").attr(\"value\")==\'\')
{
//alert(\'请输入文字!\');
$(\".show_message\").html(\'错误提示:搜索框文本不能为空!\');
$(\".show_message\").fadeIn(1000);
$(\".show_message\").fadeOut(1000);
$search.focus();
//return false;
}else{
//开始ajax执行数据
$.ajax({
type: \"POST\",
url:\"/index.php/Goods/search\",
data:{
search:$search.val()
},
dataType: \"json\",
success: function (data) {
if (data.status == 1) {
//alert(data.info);
var html=\'\';
$.each(data.data,function(no,items){
html+=\'\';
});
html+=\"
\'+items.goods_id+\' \'+items.goods_name+\' \'+items.add_time+\' \'+items.brand+\' \'+items.price+\'\";
$(\".goods-list\").html(\' \').html(html);
// alert(html);
}
else if (data.status == 0) {
$(\".show_message\").show();
$(\".show_message\").html(data.info);
$(\".show_message\").fadeOut(3000);
// alert(data.info);
return false;
}
}
});
}
});
});
希望本文所述对大家的ThinkPHP框架程序设计有所帮助。
本文地址:https://www.stayed.cn/item/8445
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我