Я создаю веб-страницу с бесконечной прокруткой, используя waypoints.js с бэкэндом в качестве Django. Проблема в том, что мои функции jquery и ajax не работают с вновь сгенерированным контентом, когда они работают с контентом на первой странице.
** РЕДАКТИРОВАТЬ: - ** Я обновляю свой код, чтобы было легче понять и мой вопрос.
<div class="infinite-container">
{%if result %}
{% for c in result %}
<div class="infinite-item">
<img class="likebutton" value="{{c.id}}" id="{{c.id}}" src="{%static "/images/icons/renameheart.png" %}" />
<div class="LikeCount" id="LikeCount{{c.id}}">{{c.totallikes}}{%if c.totallikes|add:0 == 1%} Like{% elif c.totallikes|add:0 == 0 %} Like {% else %} Likes{% endif %}</div>
</div>
{% endfor %}
{% if result.has_next %}<a class="infinite-more-link" href="?page={{ result.next_page_number }}"></a><div class="loading">loading...</div>{% endif %}
{% endif %}
</div>
<script type="text/javascript">
var infinite = new Waypoint.Infinite({
element: $('.infinite-container')[0],
onBeforePageLoad: function () {
$('.loading').show();
},
onAfterPageLoad: function ($items) {
$('.loading').hide();
}
});
$(document).ready(function(){
$('.likebutton').click(function(){
var id=$(this).attr('value');
var csrftoken = $("[name=csrfmiddlewaretoken]").val();
var datat={'id':id};
$.ajax({
type:"POST",
url:"/like/",
data:datat,
headers:{
"X-CSRFToken": csrftoken
},
success:function(data){
if (data.condition==="Liked"){
$('#'+id).attr("src","/static/images/icons/renameheart.png");
}
if (data.condition==="Unliked"){
$('#'+id).attr("src","/static/images/icons/heart.png");
}
var likecon=$('#LikeCount'+id);
likecon.empty();
if (data.likes > "1"){
likecon.text(data.likes+" Likes");
}else{
likecon.text(data.likes+" Like");
}
}
});
});
});
Теперь предположим, что если каждая страница содержит 5 записей, то мои функции jquery и ajax работают только с первыми 5 записями.