【问题标题】:script doesn't work in django template脚本在 Django 模板中不起作用
【发布时间】:2017-08-02 13:57:44
【问题描述】:

我尝试按照this 教程进行操作,但由于某种原因,JS 在我的模板中没有执行任何操作。

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

我的模板如下所示:

<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>

我的观点.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())

我的 urls.py:

    url(r'^test/$', views.debate_archive, name='home'), 

有什么想法吗?

【问题讨论】:

  • 你的浏览器控制台有错误,你能把它过去吗?
  • @BearBrown 我没有错误
  • serialize_debates() 的代码是什么,你有 django 的回应吗?
  • @BearBrown 与本教程的代码相同,唯一的变化是辩论的价值。 django没有不好的反应。该函数似乎没有收到任何 ajax 请求
  • 你改了ajax参数里的url了吗?

标签: javascript html django django-templates


【解决方案1】:

问题似乎与另一个模板中的模板有关。我遇到了同样的问题,但找不到解决方案。如果它们位于另一个模板的模板中,则不会加载来自静态的脚本并且不会执行内联脚本。

【讨论】:

    【解决方案2】:

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

    jQuery(function ($) { ...
    

    了解更多here

    【讨论】:

      猜你喜欢
      • 2014-10-07
      • 2023-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-12
      • 2015-09-19
      • 2015-02-12
      • 2021-01-10
      相关资源
      最近更新 更多