У меня есть функция "Мне нравится" на моем сайте laravel. Он отлично работает как запрос POST, однако я хотел бы использовать AJAX для запроса, чтобы не перезагружать страницу. Я попытался сделать это, однако в прошлом я не использовал много AJAX и получаю некоторые ошибки.

< Сильный > Разметка :

<li data-value="{{$status->id}}" class="like">
  Like
</li> 

Маршрут Laravel:

Route::get('/status/{statusId}/like', [
    'uses' => '\CommendMe\Http\Controllers\StatusController@getLike',
    'as' => 'status.like',  
    'middleware' => ['auth'],
]);

< Сильный > JS :

$('.like').click(function() {
 $likeValue = $(this).attr('data-value');
 $token     = $('meta[name=csrf-token]').attr("content");
 $.ajax({
    type: "POST",
    url: host + '/status/' + $likeValue + '/like',
    data: {likeValue: $likeValue, _token:$token},
 }).success(function (res){

 });
}); 

Это вернет ошибку:

TypeError: $ .ajax (...). Успех - это не функция

Помогите!

-1
Felix Maxime 27 Ноя 2016 в 00:57

2 ответа

Лучший ответ

Я понимаю, почему это не сработало. Мой маршрут ожидал запроса GET, а не POST. Ооо!

0
Felix Maxime 29 Ноя 2016 в 03:46

Пытаться

$.ajax({
    type: "POST",
    url: host + '/status/' + $likeValue + '/like',
    data: {likeValue: $likeValue, _token:$token},
    success: function(res) {

    }
 });
0
Shivam Chawla 26 Ноя 2016 в 22:47