ID, полученный от почты - отправьте через ajax - PullRequest
0 голосов
/ 30 сентября 2018

Я хотел бы прочитать идентификатор сообщения из html и отправить его через AJAX на контроллер.Как я могу получить почтовый идентификатор ($post->id) и передать его через AJAX?Или есть лучшее решение для сохранения сообщения, просмотренного пользователем?

@foreach ($posts as $post)
    <div id="post_container_{{$post->id}}" class="row waypoint">
    </div>
@endforeach

Это мой код AJAX:

$('.waypoint').waypoint(function() {
        $.ajax({
            url: '/posts/view',
            type: "post",
            data:
            success: function(request){
                console.log(request);
            },
            error: function(response){
                console.log(response);
            },
            headers:{
                'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
            }
        });
    }, {
        offset: '100%'
});

Ответы [ 2 ]

0 голосов
/ 30 сентября 2018

Вы можете добавить атрибут data-id следующим образом:

@foreach ($posts as $post)
    <div id="post_container_{{$post->id}}" data-id="{{$post->id}}" class="row waypoint">
    </div>
@endforeach

, а затем получить к нему доступ, используя attr()

$('.waypoint').waypoint(function() {
    let post_id = $(this).attr('data-id');   //this specifies the particular post row in focus.
    $.ajax({
        url: '/posts/view',
        type: "post",
        data: {post_id: post_id}
        //and so on. 
    });
}, {
offset: '100%'
});
0 голосов
/ 30 сентября 2018

Получить идентификатор из сфокусированной путевой точки.

let waypoint_id = this.getAttribute('id'); // something like 'post_container_1'

Получить только строку после _

let post_id = waypoint_id.split("_").pop(); // something like '1'

в ajax() функции

data: {
    post_id: post_id
}
...