나는 이것을 알아 내지 못합니다. {{variable}}을 사용하여 변수를 렌더링하는 Python/Django 템플릿이 있는데 사용자가 버튼을 클릭 할 때 변수를 조작하기 위해 HTML 페이지에서 Javascript를 사용하려고합니다.자바 스크립트에서 변수에 이중 중괄호를 연결하는 방법
내가보기에 문제는 자바가 {{다르게, HTML로 렌더링 할 때 변수를 변환하지 않는다는 것입니다. (즉, 변수 대신 {+ id +}가 코드 아래 : (그것은 5 'ID를'변환 예.) "{{"와 그 작동하는 것 같다하지만 파이썬은 같은 문자열을 해석하지 않습니다
function changeDate()
id = 5;
html = "{{ variable[" + id + "] }}";
document.getElementById('test').innerHTML = html;
나는이처럼 그들을 탈출 시도했습니다 변수의 실제 값 대신 페이지의 문자열을 {{variable [5]}}로 표시합니다.
내 은입니다. 는 JavaScript가 이후에 DAB를 이후에 이미 렌더링했기 때문에 발생합니다. 따라서 Python은 처음에 페이지를 렌더링 할 때 변수를 변환 할 수있는 기회가 없습니다.
그래서 나는 두 가지 해결책이 있다고 생각 :
- 그림 밖으로 문자열의 {{와}} 떠나 제대로하면서 변수를 렌더링 할 수있는 방법이
또는
- Python이 {{variable [5]}의 문자열 버전을 자바 스크립트를 통해 표시되기 전에 해석하도록하는 방법을 알아 봅니다.
도움을 주시면 감사하겠습니다.
서버 측 코드는 JS 변수를 알지 못합니다. 모든 JS 코드와 html은 그대로 응답에 포함됩니다. 브라우저가 응답을 받기 전에 모든 서버 측 코드가 실행됩니다. – nnnnnn
그래서 ... 자바 스크립트 함수가 있고 장고 템플릿을 사용하여 HTML을 렌더링하고 싶습니까?난 당신이 클라이언트 - 서버 관계의 성격을 오해하고 있다고 생각 ... – nneonneo
@nnnnnn 의견 # 2 (변수를 렌더링하는 파이썬을 받고)하지만 # 1 - 왜 자바 스크립트 변수를 렌더링 할 수 없습니다 중괄호? 그렇지 않으면 당신은 이미 내 질문에서 말한 것을 되풀이했다. –