Laravel JS自动完成

时间:2019-03-25 19:53:02

标签: javascript php ajax laravel

我不知道这是怎么回事。我正在尝试编写一个非常简单的ajax帖子,以便在laravel中进行自动填充。

我有一个输入框和一个用于显示结果的位置:

<div class="form-group">
     <input type="text" name="tag_name" id="tag_name" class="form-control input-lg" placeholder="Enter Country Name" />
     <div id="tagList">
     </div>
</div>

和我的JS

$('#tag_name').keyup(function(){ 
            var query = $(this).val();
            if(query != '')
            {
             //var _token = $('input[name="_token"]').val();
             $.ajax({
              url:"{{ route('campaigns.search') }}",
              method:"POST",
              data:{query:query, _token: '{{ csrf_token() }}'},
              success:function(data){
               $('#tagList').fadeIn();  
                        $('#tagList').html(data);
              }
             });
            }
        });

        $(document).on('click', 'li', function(){  
            $('#tag_name').val($(this).text());  
            $('#tagList').fadeOut();  
        });  

    });

该路由指向我的控制器功能:

 public function searchTags(Request $request)
{   

    if($request->get('query'))
    {
        $query = "%" . $request->get('query') . "%";
        $data = CampaignTags::where('TAG_DATA', 'LIKE', $query)->get();

        $output = '<ul>';
        foreach ($data as $row) {
            $output .= '<li><a href="#">' .$row->TAG_DATA. '</a></li>';
        }

    }

    return json_encode($data);
}

当我键入内容进行检查时,我在搜索中得到200条代码,但没有从数据库中显示实际结果,响应似乎为空

1 个答案:

答案 0 :(得分:0)

我使用typeahead做到了。然后在另一个线程中回答之前

这里是链接。 Auto Complete Laravel