Php 为什么我不能在我的laravel控制器中调用函数?
在我的laravel项目中,我有这样的链接页面: 然后我试着让ajax像这样工作Php 为什么我不能在我的laravel控制器中调用函数?,php,ajax,laravel,Php,Ajax,Laravel,在我的laravel项目中,我有这样的链接页面: 然后我试着让ajax像这样工作 $(window).dblclick(function(){ $.ajax({ url: 'test', success: function(r){ alert(r); } }); }); 我的路线是这样的: Route::get('test', ['uses'=>'MyController@test']); 我在控制器中的功能如下:
$(window).dblclick(function(){
$.ajax({
url: 'test',
success: function(r){
alert(r);
}
});
});
我的路线是这样的:
Route::get('test', ['uses'=>'MyController@test']);
我在控制器中的功能如下:
public function test(){
echo 1;
}
当我运行ajax函数时,输出不是1,但当我像这样更改链接页面时:
ajax的输出是1,怎么了?帮帮我。请将js代码中的路径更改为: 问题是,当您的请求被发送到而不是 您应该使用绝对路径
/test
而不是test
$(window).dblclick(function(){
$.ajax({
url: '/test', //changed
success: function(r){
alert(r);
}
});
});
问题在于:
url: 'test',
将其更改为:
url: '{{ url("/test") }}',
然后再试一次
说明:在laravel中,url()
帮助程序用于为应用程序生成任意url
尝试命名路由:
route::get('/test',['as'=>'testroute','uses'=>'MyController@test' ]);
然后在js中,按以下方式调用路由:
url = "{{ route('testroute') }}";
$.ajax({
url: url,
success: function(r){
alert(r);
}
});
ajax函数中有时无法使用laravel路由, 首先你试着用这个
url : "{{route('route_name')}}"
如果不起作用,您可以使用Ziggy
,
这很好,而且很容易使用
链接:
url:“测试”
是一个相对url,因此如果您在page/39
上,您将调用page/39/page
。尝试使用url:'/test'
如果我的url是这样的话会怎么样:localhost:8888/project/page/5 ajax的url怎么样?拉威尔的路线呢?