我无法用jQuery从刀片视图中使用Ajax。正如我所研究的,它只是像往常一样简单地使用函数$.get
或$.post
,并将适当的根作为第一个参数。如果我这样做了:
app/views/home/index.blade.php
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
{{Form::button("d",["id"=>"d"])}}
<script>
$("#d").on("click",function(){
$.post("/ajax",function(d){
console.log("d");
});
});
</script>
app/routes.php
Route::post("/",['as'=>'ajax'],function(){
return 'returned form route';
});
我总是接受500个内部服务器错误,如果我尝试一个get请求的话,情况也是一样。还作出了以下决定:
$.post("{{{route('ajax')}}}",function(){ ...
但也不起作用。
我意识到问题是,我有一个额外的http://在开始时,不应该在那里。我如何获得适当的localhost:8000,使它也能在服务器上工作?
也检查了迈克尔卡尔金斯的视频如何使用Laravel视频提交ajax,但我想我已经做了同样的,但仍然没有工作。
如果我以整个URL (localhost:8000/)作为路由,我会接受一个安全错误的跨源请求,并从中添加内容,显然这不是最好的解决方案。
发布于 2013-04-27 16:30:56
从贴出的详细信息看,你好像是在做一条邮政路线,试着改变一下
Route::post("/",['as'=>'ajax'],function(){
至
Route::post("/ajax", ['as'=>'ajax', function()
{
// Your code...
}]);
或者将AJAX从$.get更改为POST
https://stackoverflow.com/questions/16254355
复制相似问题