【问题标题】:Endless-pagination stuck on show_more无休止的分页卡在 show_more
【发布时间】:2014-06-30 06:36:40
【问题描述】:

所以我尝试在我的项目中使用 ajax 实现 Twitter 样式的分页,但是当我单击 show_more 时它卡住了。它只是更改为标签“正在加载”并且不显示任何新条目。 视图.py

def view_dates(request, check, template = 'dates.html',page_template = 'dates_table.html'):
    check = Check.objects.get(id = check) 
    dates = Date.objects.filter(check_id = check).order_by('-date').select_related('check').annotate(status = Min('result__status'))
    context = {
    'dates': dates,
    'check': check,
    'page_template': page_template}
    if request.is_ajax():
        template = page_template
    return render_to_response(template, context, context_instance=RequestContext(request))  

日期.html

{% paginate 16 dates %}
<br>
<table class = 'table table-hover'>
        <tr>
            <td>Date</td>
            <td>Status</td>
            <td></td>
        </tr>

<div class="endless_page_template">
    {% include page_template %}
</div>

</table>
{% show_more %}
</body>
{% block js %}
  {{ block.super }}
  <script src="http://code.jquery.com/jquery-latest.js"></script>
  <script type="text/javascript" src="http://yourjavascript.com/337923491/endless.js" charset="utf-8"></script>
  <script type="text/javascript" src="http://yourjavascript.com/151379951/endless-pagination.js"></script>
  <script>
    $.endlessPaginate({paginateOnScroll: true,
    endless_on_scroll_margin : 10,
    paginateOnScrollChunkSize: 5        
});</script>
{% endblock %}

page_template - dates_table.html

{% load date_extras %}
{% block table %}
        {% for date in dates %}
            <tr>
                <td>
                    <button type="button" class="btn btn-link" onclick="location.href='/checks/{{ date.check_id }}/{{ date.id }}/results/'">
                        {{ date.date|format }}
                    </button>
                    </td>
                <td>
                    {% if date.status == True %}
                            <span class="glyphicon glyphicon-ok"></span>
                        {% else %}
                            <span class="glyphicon glyphicon-remove"></span>
                    {% endif %}
                </td>
                <td><a href='/checks/{{ date.check_id }}/{{ date.id }}/delete/'><span class="glyphicon glyphicon-trash"></span></a>
                </td>
            </tr>       
        {% endfor %}
    </table>
{% endblock %}

应该是什么问题?

【问题讨论】:

  • 当无限分页实际执行 ajax 请求时,您可能遇到了异常。检查日志或控制台。我可以看到的一个问题是,如果 request.is_ajax 您应该将响应返回为 json。
  • 你知道,当我删除 if request.is_ajax 语句时,ajax 实际上开始工作,但它加载了多个滚动的 dates.html 页面。所以,我的页面模板似乎有问题
  • 是的,可能只是尝试直接渲染页面模板,例如在视图调用中更改template='dates_table.html',它会喷出错误。

标签: ajax django django-endless-pagination


【解决方案1】:

您应该将show_more 按钮放在page_template 中,而不是在索引模板中...

【讨论】:

    猜你喜欢
    • 2013-06-28
    • 1970-01-01
    • 2013-08-14
    • 2023-04-06
    • 1970-01-01
    • 1970-01-01
    • 2013-05-24
    • 2013-08-20
    • 2016-06-11
    相关资源
    最近更新 更多