我仍然是网络发展的学生,所以请光临我。
我有一个模型的对象显示在模板中,带有for循环,如下所示:
{% for post in posts %}
{{post.text}}
{% endfor %}
现在我想为每个包含post.id值的post对象附加一个按钮,并且在单击该按钮时应该发出一个更新该特定对象的vote属性的ajax请求。
所以,我尝试添加这样一个按钮:
{% for post in posts %}
{{post.text}}
<input type="submit" value="V" id="upButton" post_id="{{post.id}}"></input>
{% endfor %}
在ajax之前,我只是想看看按钮是否正常工作,所以我尝试检查(使用jQuery),如果它提醒每个帖子的post.id值:
<script>
$(document).ready(function(){
$('#upButton').click(function(){
var post_id = $('#upButton').attr('post_id');
alert(post_id);
});
});
</script>
只有第一个对象上的按钮正常工作。其他按钮不起作用。这里发生了什么事?关于将按钮附加到物体的这种方法的任何建议也会有所帮助。
干杯
答案 0 :(得分:0)
id
属性。
因此,javascript代码将始终仅引用第一个元素。
将其更改为:
<input type="submit" value="V" data-role="upButton" post_id="{{post.id}}"></input>
在javascript中:
<script>
$(document).ready(function(){
$('[data-role=upButton]').click(function(){
var post_id = $(this).attr('post_id');
alert(post_id);
});
});
</script>
应该有效