【发布时间】:2020-12-26 19:26:29
【问题描述】:
我有一个在 laravel 5 中工作的 ajax 搜索功能,在 laravel 7 上不起作用。我正在使用旧版本来学习和升级所有内容,现在在将数据发布到我的路线时,我在 ajax 中遇到 404 错误。我对 Laravel 很陌生,所以仍在学习和修改代码以测试结果。基本上我试图将两个变量传递给控制器,代码都适用于旧版本。任何帮助和指导将不胜感激。
路线
Route::get('/search','SearchController@index');
Route::get('/search/action','SearchController@search')->name('search.action');
控制器
public function search(Request $request)
{
if ($request->ajax()) {
$output = "";
$figures = figures::where('type', 'LIKE', '%' . $request->search . "%")->where('base', 'LIKE', '%' . $request->txt . "%")->get();
$prodcount = $figures->count();
if ($prodcount >= '1') {
}
return Response($output);
} else {
}
return Response($output);
}
}
}
阿贾克斯
<script type="text/javascript">
//$('#search').on('keyup',function(){
// $("#topping").change(function () {
$("#but").click(function () {
$value=$('#topping').val();
$value2=$('#search').val();
$.ajax({
type : 'get',
url : '{{URL::to('search/action')}}',
data:{'search':$value, 'txt':$value2},
success:function(data){
$('tbody').html(data);
//console.log(data);
}
});
})
</script>
<script type="text/javascript">
$.ajaxSetup({ headers: { 'csrftoken' : '{{ csrf_token() }}' } });
</script>
【问题讨论】:
-
试试
url : '{{URL::to('search/action')}}',到url : {{ route('search/action') }} -
感谢您的建议,我已经更新了代码,但仍然得到相同的控制台错误:GET 127.0.0.1:8001/search/action?search=dc&txt= 500 (Internal Server Error)
-
感谢您的帮助,这确实解决了问题。