2017-02-21 1 views
0

Я просто пытаюсь установить переменную в JQuery, так что я могу изменить некоторые HTML, и я получаю следующее сообщение об ошибке:Неожиданный идентификатор при доступе к Джанго переменной в JQuery

(index):208 Uncaught SyntaxError: Unexpected identifier

Я проверил все много , У меня есть чувство, что это будет просто оскорбительная опечатка где-нибудь, но мне нужна помощь, я больше не могу смотреть на нее. Вот мой jquery:

<script> 
// make this document specific and move to another file...? 
$(document).ready(function() { 
    //set some variables e.g. 
    var1 = 5; 
    for (var i = 0; i < var1; i++) { 
     // do things 
     var2 = 1; 
     var3 = 10; 
     for (var j = var2; j <= var3; j++) { 
      //more stuff 
     } 
     var change_start = $('td').filter(function() { 
      return Number(this.textContent) == var2; 
     }); 

     ///This line is raising an error!!! 
     var the_person = {{ person }}; 

     var add_name = change_start.prepend('<a href="#"><center>'+the_person+'</center></a>'); 
    } 
}); 

</script> 

Я много сделал, поэтому на него легко смотреть. Сценарий работал отлично, пока я не добавил последние 3 строки, поэтому он должен быть там. Пока этот скрипт находится в html-документе, я планирую переместить его позже. Я передаю человека в шаблон, который отображает его, как показано ниже:

def holiday(request): 
    user = request.user 
    # get persons username 
    person_id = Person.objects.get(user_name_check=request.user) 

    #.... 


    context = { 
     "person": person_id, 
     "start_dates": start_list, 
     "end_dates": end_list, 
     "people": person_list, 
    } 
    return render(request, "tande/calendar.html", context) 

Спасибо!

ответ

3

Если переменная не является объектом JSON, она должна быть в кавычках. см: https://stackoverflow.com/a/4153424/5433407

т.е. var the_person = "{{ person }}";

For now this script is in the html document, I plan to move it later.

Использование переменных шаблона Джанго не будет работать, если вы берете это из HTML, см: https://stackoverflow.com/a/32998283/5433407

+1

Большое спасибо, что сделал это! Ах да, я думал, что могу определить переменные шаблона в документе html, прежде чем импортировать документ .js - таким образом я могу написать другой код в документе js, чтобы его аккуратно поднять? –

Смежные вопросы