Я хочу сделать рендеринг html-файла в шаблоне. И используйте jquery .load() для встраивания других html-файлов в этот файл a.html. Но мне не удалось выполнить мой следующий код.JQuery .load() не работает в шаблоне Django
Ниже мое содержание a.html:
<html>
<head>
{% load staticfiles %}
<script type="text/javascript" src="{% static "js/jquery-1.10.2.js" %}" />
<script>
$(function(){
$("#includeContent").load("abc.html");
});
</script>
</head>
<body>
<div id="includeContent"></div>
</body>
</html>
Следующая моя abc.html:
<html>
<body>
<!-- Hello -->
<p>Hello world </p>
</body>
</html>
Ниже мое приложение дерево:
- App:
views.py
models.py
- static
-js:
jquery-1.10.2.js
- template:
a.html
abc.html
В Отладчик Firebug, я могу видеть исходный код jquery-1.10.2.js, поэтому я думаю, что сценарий jquery успешно включен.
abc.html Я хочу встроить в a.html, должен показать «Hello world» Но я ничего не вижу после загрузки a.html.
Есть ли способ исправить это?
Добавить настройку "Шаблоны":
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
Благодарим за внимание на стороне сервера и на стороне клиента. Я думаю, что в моем случае jQuery сделает запрос на abc.html не a.html? –
В urls.py я добавил url (r '^ app/abc /', 'app.views.abc') в urlpatterns. И я определил функцию в views.py, чтобы отобразить этот конкретный запрос в abc.html под шаблонами/abc.html. Кажется, что он все еще не работает ... –
Да, он отправит запрос на 'abc.html'. Проверьте свой код, потому что у вас может быть некоторая ошибка, это общая идея. – Wtower