2010-02-01 6 views
1

symfony 1.4를 사용하고 있습니다. js 코드를 템플릿에 사용하고 JS로 구분 된 파일에 넣으 려합니다. 여러 번 사용하기 때문에 코드.symfony의 부분보기에서 자바 스크립트 소스

<?php use_javascript('mi_js') ?> 

이 템플릿 renderPartial 방법에 뷰 영역을 새로 일부 AJAX 호출을 가지고

제가

하여 템플릿에 추가 JS. 이 새로운 영역은 JS 코드를 사용하기 때문에이 코드를 부분 뷰에 추가해야합니다. 그러나 추가하는 경우 : 부분에서

<?php use_javascript('mi_js') ?> 

가, 다음이 작동하지 않습니다. 내가이 일을하지 않으려는 말했듯이

<script type="text/javascript">/*<![CDATA[*/ 

$('.mi_class').click(function() { 

var a = $(this).parent(); 
... 

: 내가 가진이 작품은 같은 부분에있는 모든 JS 코드를 넣어 얻으려면.

나는 무엇을 할 수 있습니까? 이 작업을 수행 할 수있는 템플릿 방법은 무엇입니까?

미리 감사드립니다. 알레한드로 G.

답변

1

이 부분에 코드를 삽입해야하는 이유는 다음과 같다 :

당신이 다음 JS의 파일합니다 (경로)가 sfResponse 객체에 추가됩니다 use_javascript('mi_js')를 사용

. 그런 다음 템플릿이 렌더링되면 모든 JS 파일이 get_javascripts()을 통해 레이아웃 파일에 포함됩니다.

그러나 이제 부분을 렌더링하고 결과를 Ajax를 통해 다시 전송할 때 JS 파일은 이 아니며이 포함됩니다.

코드를 함수에 넣고 HTML 파일의 헤더에 추가하는 것이 좋습니다. 그러면 부분 전화에서 다음과 같이 호출합니다.

<script type="text/javascript">/*<![CDATA[*/ 

$('.mi_class').click(the_new_function()) 

(매개 변수를 정의해야할지 모르겠다).

0

jQuery의 live() 메소드를 통해 향후 DOM 요소에 이벤트 처리기를 연결할 수 있습니다. 또 다른 방법은 부분을로드 한 후 핸들러를 직접 바인딩하는 것입니다.

0

부분 파일 대신 부분 파일을 사용하는 부모 페이지에 JS 파일을 정상적으로 추가하는 방법은 어떻습니까?

부분이 많은 곳에서 호출되는 경우 응용 프로그램 또는 모듈의 view.yml 파일에 추가합니다.

관련 문제