如果控制器具有此索引功能:
public function getIndex() {
return View::make('web.index')
->with('projects', Project::orderBy('id', 'DESC')->paginate(8));
}
在我看来有foreach循环
@foreach($projects as $project)
<a href="like/{{$project->id}}" class="action like {{$liked}}">
{{$project->likes}}
</a>
@endforeach
<div class="pagination">
{{$projects->links()}}
</div>
getLike函数:
public function getLike($id) {
if(Cookie::get('like_'.$id) != 'true')
{
$project = Project::find($id);
$project->increment('likes');
$cookie = Cookie::forever('like_'.$id, 'true');
$s = array(
'status' => 'success'
);
$response = Response::json($s);
$response->headers->setCookie($cookie);
return $response;
}
$response = array(
'status' => 'error'
);
return Response::json( $response );
}
Ajax请求:
$(".like").on("click", function(){
$.get(
$( this ).prop( 'href' ),
{
},
function( data ) {
if(data['status'] == 'error')
{
alert("Already Liked");
}
else {
alert('Like');
}
},
'json'
);
return false;
});
在第一页中,getLike()函数完美运行!(我使用ajax来收集数据),但是当第2页重新加载时(即使用无限滚动),getLike函数返回带有json文本的空白页。 帮助...
答案 0 :(得分:0)
这种方法存在一些问题。
return Response::json($data)->withCookie($cookie)
。有关Laravel中Cookie的更多信息,请访问:http://laravel.com/docs/requests#cookies