使用ajax jquery和codeigniter进行实时搜索

时间:2014-08-25 18:54:33

标签: php jquery ajax codeigniter codeigniter-2

我有一个问题,所以我尝试使用ajax,codeigniter创建一个实时搜索,问题是,当我在文本框中写sreach字时,我得到了所有字段,我不明白我的错误在哪里: 我的HTML:

<div class="input-group">
                <input type="text" name="search_firm" id="search" class="form-control" style="width: 200px !important;float: right !important;"/>
            </div>
            <ul id="finalResult"></ul>
  <script>
   var base_url = "<?=base_url()?>";
 </script>
<script>
$(document).ready(function(){
    $("#search").keyup(function(){
        if($("#search").val().length>3){
            $.ajax({
                type: "post",
                url :  base_url + "firm/searchFirm",
                cache: false,
                data:'search='+$("#search").val(),
                success: function(response){
                    $('#finalResult').html("");
                    var obj = JSON.parse(response);
                    if(obj.length>0){
                        try{
                            var items=[];
                            $.each(obj, function(i,val){
                                items.push($('<li/>').text(val.name_firm + " " + val.idno));
                            });
                            $('#finalResult').append.apply($('#finalResult'), items);
                        }catch(e) {
                            alert('Exception while request..');
                        }
                    }else{
                        $('#finalResult').html($('<li/>').text("No Data Found"));
                    }

                },
                error: function(){
                    alert('Error while request..');
                }
            });
        }
        return false;
    });
});

财务主任:

public function searchFirm()
{
    $search =  $this->input->post('search_firm');
    $query = $this->firm_m->getFirm($search);
    echo json_encode ($query);
}

模特:

 public function getFirm($search)
{
    $this->load->database();
    $query = $this->db->query("SELECT * FROM firms where name_firm like '%$search%' ");
    return $query->result();
}

所以问题是我不仅通过搜索词的查询得到了所有字段。请帮助我。提前完成

0 个答案:

没有答案