zorro76
@zorro76

Какой формат url задать в скрипте?

Делаю тур по сайту, по аналогии intro,js и необходимо реализовать переход на другую страницу, использую вот этот js код:
document.getElementById('start').onclick = function() {
        introJs().setOption('doneLabel', 'Next page').start().oncomplete(function() {
            window.location.href = 'second.html?multipage=true';
        });
    };

проект на django и поэтому url нужно писать джанговский - он у меня вот такой {% url 'clients:product-create' %}
Если подставить вместо second.html эту конструкцию {% url 'clients:product-create' %} - скрипт не работает.
Как правильно здесь прописать url?
  • Вопрос задан
  • 119 просмотров
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Django
Седой и строгий
Конечно не работает, шаблонизатор, который обрабатывает конструкцию {% url 'clients:product-create' %}, работает на сервере, а javascript работает в бразуере пользователя и понятия не имеет, как такое обрабатывать. Для решения этой проблемы вариантов масса. Один из них - включить в шаблон, из которого будет происходить запрос, код вида
<script type="text/javascript">
    window.urls = {
        clientProductCreate: {% url 'clients:product-create' %}
    }
</script>

А в js-скрипте url получать с помощью конструкции
window.location.href = urls['clientProductCreate'];

Или можно использовать что-нибудь вроде django-js-utils.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы