Добрый день! Прошу не кидаться тапками, я в js совсем еще зеленый, но задача стоит и мне нужна помощь.
У меня есть допустим несколько статей, и мне нужно прописать функционал оценки статьи.
опишу код примерно:
<div>
<p>статья1</p>
<a class='like_button' onclick="createajax()" href="#" data-id="{{ article.id }}" data-action="like'>
<span class='total-likes'>0</span>
</div>
<div>
<p>статья2</p>
<a class='like_button' onclick="createajax()" href="#" data-id="{{ article.id }}" data-action="like'>
#всего лайков
<span class='total-likes'>0</span>
</div>
Это html код, js:
$(document).ready(function(){
{% block domready %}
function createajax(e){
e.preventDefault();
$.post('{% url "review-like" %}',
{
action: $(this).data('action'),
id: $(this).data('id'),
},
function(data){
if (data['status'] == 'ok')
{
var previous_action = $('a.like_button').data('action');
// toggle data-action
$('a.like_button').data('action', previous_action == 'like' ?
'unlike' : 'like');
// update total likes
var previous_likes = parseInt($(total-likes).text());
$(total-likes).text(previous_action == 'like' ?
previous_likes + 1 : previous_likes - 1);
}
}
);
};
Очень нужна помощь) Я так понимаю нужна функция, которая будет отправлять ajax при клике. Вот как это можно универсально прописать?