Hola todos, con este script estoy tratando de cambiar la clase de un botón cuando le dan click. si da click en el puntaje, se "desactivan" los botones vote-up y vote-down.
Código:
<script>
$(function(){
$('.puntaje').click(function(){
$('.vote-up').removeClass("btn-warning")
$('.vote-down').removeClass("btn-warning")
})
$('.vote-up').click(function(){
$(this).toggleClass("btn-warning")
$('.vote-down').removeClass("btn-warning")
});
$('.vote-down').click(function(){
$(this).toggleClass("btn-warning")
$('.vote-up').removeClass("btn-warning")
});
});
</script>
El pequeño problema es que estoy usando un for loop de django para mostrar todos los posts, y no se como seleccionar el post en el cual está dando click el usuario en ese momento puesto que el for loop los pone a todos con la misma clase.
Este es el Html:
Código:
{% for post in posts %}
<div class = "control_votos">
<div class = "btn-group-vertical">
<button type="button" class = "btn btn-default vote-up">
<span class="glyphicon glyphicon-chevron-up"></span>
</button>
<button type="button" class = "btn btn-default puntaje">
<h2 class = "numero_puntaje"> {{post.0.votos_positivos}} </h2>
</button>
<button type="button" class = "btn btn-default vote-down">
<span class="glyphicon glyphicon-chevron-down"></span>
</button>
</div>
{% endfor %}
Soy un poco novato en jquery, y es probable que la solución sea simple. Django crea un div "control votos" por cada post. Y luego tengo un montón de control_votos que efectivamente se cambian las clases cuando les doy click pero que si le doy click a un "vote-up" se apagan todos los "vote-down", si le doy click a un "vote-down" se apagan todos los "vote-up", no solo el del div en el que estoy trabajando.
El error es simple, pero no tengo mucha idea de como solucionarlo.