2014-01-22 1 views
2

이전부터 DIV를 다시로드하려고합니다.Jquery html로 django 템플릿 파일을 포함합니다.

<div id="mydiv">{% include "comments/comments.html" %}</div> 

내가 원하는 것은 단추를 클릭하면됩니다.

$('#mydiv').html('{% include "comments/comments.html" %}</div> 

jquery html 함수 내에 django 태그를 넣으면 javascript가 매우 불만합니다. 나는 이것이 .load()로 해결할 수 있다는 것을 알고 있지만, 그것은 다른 것들을 무너 뜨릴 나의 전체 논리를 다시 써야한다는 것을 의미 할 것이다.

+0

모든 jQuery를이 DOM이로드 된 후에 발생합니다 호출합니다. 이전에 'include'문이 발생하는 동안. 따라서이 방법은 효과가 없습니다. '$ .load()'를 사용하지 않으려면 숨겨진 요소에'include '할 수 있고,'.show()'에는 jQuery를 사용하십시오. 나는'.load()'를 사용할 것이다. –

+0

감사합니다. 말이된다. jQuery로 "다시 포함"하는 것이 가능할 것으로 기대하고있었습니다. 내 애플 리케이션을 다시 고쳐야 할 것 같아. –

답변

0

Template Literals을 사용하고 게시일을 지정하면 ES5에 Template Strings이라고합니다.

템플릿 리터럴은 포함 된 표현식을 허용하는 문자열 리터럴입니다. 여러 줄 문자열과 문자열 보간 기능을 사용할 수 있습니다. 이전 버전의 ES2015 사양에서는 "템플릿 문자열"이라고 불 렸습니다.

Template literals

JQuery와는 문자열이 걸리기 때문에, HTML을하지 않을 때를 HTML 파일에서 HTML 코드 과거의 파괴와 동일한 문자의에서 파괴됩니다 " 또는 ' 주위 {% include ... %} 퍼팅 유지 귀하의 comments.html. comments.html 파일 주위에 진드기를 넣은 다음 JQuery 메서드로 django와 함께 가져옵니다.

(이 때문에 코드 사용되는 나는이 역 따옴표를 사용할 수 없습니다 '-> (BT))

(bt)<div id='mainpanel{{ i.id }}' class='panel panel-default'> 
    <div class='panel-heading clearfix'> 
     <b class='panel-title'>{{ i.itemfullname|escapejs }}</b> 
     <a id='close{{i.id}}' class='btn btn-default btn-sm pull-right'>X</a> 
    </div> 
<div>(bt) 
관련 문제