【发布时间】:2020-11-07 03:27:49
【问题描述】:
我目前正面临 ajax 搜索的问题,我认为这与路由有关,但我不确定出了什么问题。也许现在写代码还为时过早。
这行得通
<script type="text/javascript">
$('#name').on('keyup',function(){
$value=$(this).val();
$.ajax({
type : 'get',
url : '{{ URL::to("/search") }}',
data:{'name':$value},
success:function(data){
$('tbody').html(data);
}
});
})
</script>
这不起作用
<script type="text/javascript">
$('#name').on('keyup',function(){
$value=$(this).val();
$.ajax({
type : 'get',
url : '{{ URL::to("/associates/search") }}', // Does not change if route name is used
data:{'name':$value},
success:function(data){
$('tbody').html(data);
}
});
})
</script>
路线如下
Route::resource('associates', 'AssociateController');
Route::get('/search','AssociateController@search');
Route::get('/associates/search', 'AssociateController@search')->name('associate.search');
控制器中的搜索方法
public function search(Request $request)
{
if($request->ajax())
{
$output="";
$associates=DB::table('associates')->where('name','LIKE','%'.$request->name.'%')->limit(10)->get();
if($associates)
{
foreach ($associates as $key => $associate) {
$output.='<tr>'.
'<td>'.$associate->id.'</td>'.
'<td>'.$associate->name.'</td>'.
'</tr>';
}
return Response($output);
}
}
}
【问题讨论】:
标签: javascript jquery ajax laravel routes