2011-08-19 6 views
2

에서 자바 스크립트 VAR에 문자열 할당 :나는 다음과 같은 템플릿이 장고

var url = {{url}}; 
$.getJSON(url... 

다음과 같은보기 :

return render_to_response('template.html', {"url":"/this/url/"}) 

하지만 자바 스크립트는 string으로이 취급하지 않는 몇 가지 이유

. 왜 그런 이유가 있습니까? 내가 사용해야하는 문법은 무엇입니까?

+2

템플릿을 구문 분석 한 후 JavaScript 소스는 어떻게 생깁니 까? – agf

+0

'{{url}}'으로 명시되어 있습니다. 약간의 충고 만해도 역동적으로 작성된 JS를 습관적으로 습득하는 것은 결코 좋은 생각이 아닙니다. 모든 객체를 단일 JSON 객체에 쓰고 자바 스크립트 내부에서 참조하는 것이 더 좋습니다. 모든 동적 객체를 한 곳에서 유지하므로 관리가 훨씬 쉽습니다. – martin

답변

3

템플릿에서이 줄 :

var url = {{url}}; 

이 될 것이다 :

var url = /this/url; 

템플릿에 따옴표가없고, 문자열에 따옴표가없는, 그래서 따옴표가없는 출력에. 이를 사용해야합니다 :

var url = "{{url}}"; 

또는 더 나은 :

var url = "{{url|escapejs}}"; 

는 그래서 특수 문자가 제대로 처리됩니다.