gpt4 book ai didi

javascript - PHP Laravel : Autocomplete Search 404 (Not Found)

转载 作者:行者123 更新时间:2023-12-03 06:39:49 32 4
gpt4 key购买 nike

我正在构建一个 Laravel 应用程序,我必须在应用程序中使用自动完成搜索。

我的路线:

Route::get('/autocomplete',[
'uses'=>'CourseController@autocomplete',
'as'=>'autocomplete'
]);

我的 Controller :

 public function autocomplete(Request $request)
{

$item = $request->input(['searchname']);
$results=array();
$queries = DB::table('courses')
->where('name', 'LIKE', '%'.$term.'%')
->take(5)->get();

foreach ($queries as $data) {
$results[]=['id'=>$data->id,'value'=>$data->name];
}
return Response::json($results);
}

我的查看页面:

 {{ Form::open(['action' => ['UserController@autocomplete'], 'method' => 'GET']) }}
{{ Form::text('searchname', '', ['id' => 'searchname', 'placeholder' => 'Enter name'])}}
{{ Form::submit('Search', array('class' => 'button expand')) }}
{{ Form::close() }}


<script type="text/javascript">
jQuery(document).ready(function($) {
$('#searchname').autocomplete({
source: "/autocomplete" ,
minlength:1,
autofocus:true,
select:function(event,ui){
$("searchname").val(ui.item.value);
}
});
});
</script>

因此,当我搜索项目而不是获取项目名称时,我在控制台中收到以下错误:

GET http://localhost/autocomplete?term=tree 404 (Not Found)

谁能帮我找到解决办法吗?

最佳答案

自动完成的是问题所在。您正在传递相对于服务器文档根的路径,而不是站点内的路由。另外,您不需要表单,因为搜索是异步完成的。

你可以试试这个

<input type="text" id="searchname" placeholder="Enter name"/>

<script type="text/javascript">
jQuery(document).ready(function($) {
$('#searchname').autocomplete({
source: "{{ route('autocomplete') }}" ,
minlength:1,
autofocus:true,
select:function(event,ui){
$("searchname").val(ui.item.value);
}
});
});
</script>
<小时/>

编辑:我假设您网站的根目录位于http://localhost/your-site,而不仅仅是localhost。另外,在您的路由中,您使用CourseController,然后在表单中编写UserController。由于您无论如何都要命名路由,因此最好使用 route 帮助程序生成正确的 URL。

<小时/>

最后,在您的 Controller 中,您应该输入名称“term”,而不是“searchname”。

$term = $request->term;

关于javascript - PHP Laravel : Autocomplete Search 404 (Not Found),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38018859/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com