代码之家  ›  专栏  ›  技术社区  ›  user2896120

如何检索post id以通过Ajax?

  •  2
  • user2896120  · 技术社区  · 6 年前

    id, post description, number of likes, etc. 独一无二的 id 是一种识别每个帖子的方法。

    我有一个REST框架,如果用户喜欢这个帖子;它会更新该帖子的赞数,并将用户注册为他/他喜欢的帖子。为此,我需要在上发出一个AJAX请求 localhost/like/{post_id}

    我怎样才能得到这个职位的身份证?我应该把这个身份证放在 data-attribute 以下是我的帖子按钮容器的外观:

            <div class="grid post__btn-container">
                <div class="item">
                    <i class="like"></i>
                </div>
                <div class="item">
                    <i class="dislike"></i>
                </div>
                <div class="item">
                    <i class="share"></i>
                </div>
                <div class="item">
                    <i class="comment"></i>
                </div>
            </div>
    

    在Ajax中放置post id并获取它并将其作为post请求传递的最佳方法是什么?

    1 回复  |  直到 6 年前
        1
  •  3
  •   Aydin    6 年前

    https://jsfiddle.net/x5m7j0Lk/

    在这种情况下

        <div class="grid post__btn-container" data-postid="123">
            <div class="item">
                <i class="like">Like</i>
            </div>
            <div class="item">
                <i class="dislike">Dislike</i>
            </div>
            <div class="item">
                <i class="share">Share</i>
            </div>
            <div class="item">
                <i class="comment">Comment</i>
            </div>
        </div>        
        <div class="grid post__btn-container" data-postid="456">
            <div class="item">
                <i class="like">Like</i>
            </div>
            <div class="item">
                <i class="dislike">Dislike</i>
            </div>
            <div class="item">
                <i class="share">Share</i>
            </div>
            <div class="item">
                <i class="comment">Comment</i>
            </div>
        </div>
    

    您可以这样检索id:

    var posts = $('div[class="grid post__btn-container"]').children()
    
    posts.on("click", function(){
      var postId = $(this).parent().data('postid')
      alert(postId)
    })