2009-07-22 13 views
0

CollapsiblePanelExtender가 포함 된 AJAX 구성 요소를 만들려고합니다. CPE는 내 컨트롤의 자식 컨트롤이기 때문에 CPE의 javascript $ create 문은 구성 요소의 $ create 문 다음에 이 출력됩니다. 따라서 내 구성 요소의 JS 생성자가 실행되어 CPE를 찾으려고 할 때 CPE가 아직 생성되지 않았기 때문에 CPE를 찾을 수 없습니다. 한 가지 해결책은 내 initialize 메서드에 on_load 처리기를 연결하여로드 이후까지 CPE를 가져 오는 것을 연기하는 것입니다. 다른 해결책은 CPE를 찾기 위해 내 구성 요소에 메소드를 호출하는 시작 스크립트를 등록하는 것입니다. 이러한 솔루션 중 어느 것도 깨끗한 것으로 보이지 않습니다. 제 질문은, 당신은 어때요 일이 이런 종류의 일을 할 가정?하위 구성 요소가있는 ASP.NET AJAX 구성 요소

답변

0

초기화 방법까지 CPE를 찾으려고하지 마십시오. ID를 문자열 속성으로 사용하고 $ find를 사용하여 참조를 가져옵니다.

다른 해결책은 AddComponentProperty가있는 스크립트 설명자에서 사용하는 $ create의 '참조'기능을 사용하는 것입니다. CPE의 ClientID를 전달하십시오. 프레임 워크는 two-pass 기법을 사용하여 속성에 대한 실제 참조를 설정하는 과정을 처리합니다. 두 기법은 모두 먼저 생성 된 다음 참조가 설정되어 순서 문제를 피합니다.

관련 문제