使用数据库在laravel中自动完成文本字段
Posted
技术标签:
【中文标题】使用数据库在laravel中自动完成文本字段【英文标题】:Autocomplete text field in laravel using database 【发布时间】:2015-03-19 12:18:36 【问题描述】:我正在尝试制作如下所示的自动完成表单,但由于我的数据库查询正常,因此表单未显示建议。
表格科尔:
控制器方法代码:
路线:
当我在链接上搜索时,我得到如下查询结果:
显示结果:
["id":1,"value":"sourav hossen","id":2,"value":"sourav hossen","id":3,"value":" sourav hossen","id":4,"value":"ab","id":5,"value":"aa"]
【问题讨论】:
这个问题你解决了吗? 【参考方案1】:试试这个更改,一段时间后会奏效。
source: "URL::route('autocomplete')",
【讨论】:
【参考方案2】:我尝试使用 jquery ajax 来实现它,它成功了。 首先,您应该在以下代码之前包含一个 jquery 库。 您视图中的 javascript 代码应为:
<script>
$(document).ready(function()
$('#q').keyup(function ()
var q=$(this).val();
if(word.length>3)
$.ajax
(
type: "GET",
url: "test2",
data: q:q,
contentType: "json",
cache: false,
success: function(data, status, xhr)
$('#q').val(data[0].value);
);
);
);
</script>
在您的控制器中,您应该获取 ajax 数据
public function autocomplete(Request $request)
$input = $request->all();
$term = $input['q'];
$result = array();
$queries = ...(do whatever you like)
->take(5)->get();
foreach($queries as $query)
$result[] = ['id'=> $query->id,'value'=>$query->firstname.' '.$query->lastname];
return response()->json($result);
试试这个,如果你发现任何困难,我会在这里。
【讨论】:
在这我们要不要创建模型?以上是关于使用数据库在laravel中自动完成文本字段的主要内容,如果未能解决你的问题,请参考以下文章