首页 > 解决方案 > 如何解析多个同名类的单个实例

问题描述

当点击一个链接时,它会从喜欢变为不喜欢,反之亦然,但是喜欢和不喜欢的数量应该是唯一变化的,而不是同一页面上的每个帖子。Django 中的 for 循环用于调用帖子,因此它们具有相同的类名。下面的 jquery 应该更改特定帖子的点赞数,但由于类名,它会更改每一个帖子。请问这个怎么做?

jQuery提取

 var previous_likes = parseInt($('span.count .total').text());
 $('span.count .total').text(previous_action == 'like' ? previous_likes + 1 : previous_likes - 1);

完整的jQuery代码

$('a.like').on('click', function(event){
    event.preventDefault();
    event.stopPropagation();
    event.stopImmediatePropagation();

    $.post('{% url "posts:post_like" %}',
      {
        id: $(this).data('id'),
        action: $(this).data('action')
      },
      function(data){
        if (data['status'] == 'ok')
        {
          var previous_action = $(event.target).data('action');

          // toggle data-action
          $(event.target).data('action', previous_action == 'like' ?
          'unlike' : 'like');
          // toggle link text
          $(event.target).text(previous_action == 'like' ? 'Unlike' :
          'Like');

          // update total likes

          var previous_likes = parseInt($('span.count .total').text());
          $('span.count .total').text(previous_action == 'like' ? previous_likes + 1 : previous_likes - 1);
        }
      }
    );
  });

标签: jquerydjango

解决方案


推荐阅读