脚本不适用于django模板

时间:2017-08-02 13:57:44

标签: javascript html django django-templates

我尝试按照this教程,但出于某种原因,JS在我的模板中什么也没做。

我复制了它中的每一步,添加了一个id为“newItems”的锚div,并包含了所要求的无限滚动脚本。

我的模板如下所示:

df['Story'] = df['2017-01-31'].apply(lambda x: x[0][0])
df['2017-01-31'] = df['2017-01-31'].apply(lambda x: x[0][1])
df['2017-02-01'] = df['2017-02-01'].apply(lambda x: x[0])

我的view.py:

<body>
{% for i in "0123456789" %}
{% for j in "0123456789" %}
<li>{{i}} , {{j}}</li>
{% endfor %}
{% endfor %}
<a id="newItems">in here</a>

<script>
$(document).ready(function(){ 
$(window).bind('scroll', loadOnScroll);
});
// Scroll globals
...
SAME AS IN THE TUTORIAL
...
</script>
</body>

my urls.py:

def debate_archive(request):
    debates = range(1,1000)
    paginator = Paginator(debates, 10)
    if request.method == 'GET':
        if request.is_ajax():
            if request.GET.get('page_number'):
                # Paginate based on the page number in the GET request
                page_number = request.GET.get('page_number');
                try:
                    page_objects = paginator.page(page_number).object_list
                except InvalidPage:
                    return HttpResponseBadRequest(mimetype="json")
                # Serialize the paginated objects
                resp = serialize_debates(page_objects)
                return HttpResponse(json.dumps(resp), mimetype='json')
    debates = paginator.page(1).object_list
    return render(request, 'polls/example.html', locals())

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

问题似乎出在另一个模板中的模板上。我遇到了同样的问题,但是找不到解决方案。如果静态脚本已放置在另一个模板的模板中,则不会加载它们,并且不会执行内联脚本。

答案 1 :(得分:0)

我有同样的错误。在控制台Chrome中说:Uncaught TypeError: $ is not a function 这是我的解决方案: 您必须使用jQuery,并且不使用$(这是为了与其他库兼容) 如果必须使用$(document).ready(function(){,则实际上可以将$传递给函数调用:

jQuery(function ($) { ...

查找更多here