ThinkPHP实现ajax仿官网搜索功能实例
这篇文章主要介绍了ThinkPHP实现ajax仿官网搜索功能的方法,实例演示了后台查询功能与前台Ajax提交搜索数据的方法,是非常实用的技巧,需要的朋友可以参考下
本文实例讲述了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框架程序设计有所帮助。