2010-01-07 3 views
0

내가 잘못 설명하고있을 수 있지만 컨텐츠가 (.jsp) 외부 (.jsp)로로드되면 cluetip의 내용을 조작 (JavaScript 사용) 할 수있는 방법이 있습니까?jQuery cluetip : 렌더링 후 내용 조작

나는 목록에있는 항목의 목록이 있으며, 나는 그 중 일부를 과장하고 싶습니다. 렌더링 전에 목록의 항목에 ID 나 클래스를 개별적으로 추가 할 수 없습니다. 그것은 데이터, 우리는 테이블로 HTML로 렌더링하는 .jsp로의 항목, 끌어 JSF를 사용하는 참고

덤프 기본적이다 : 어떤 도움을 주시면 더 좋구요

<h:panelGrid columns="1"> 
    <h:column> 
     <h:selectManyCheckbox layout="pageDirection" value="#{advancedtoolscontroller.roleItems}"> 
      <f:selectItems value="#{advancedtoolscontroller.roleList}" /> 
     </h:selectManyCheckbox> 
    </h:column> 
</h:panelGrid> 

을 ...

답변

0

당신은 h:selectManyCheckbox 및 부모 UINamingContainer 구성 요소를 지정 (예 : h:form, h:dataTable 등)을 독특한 ID가 필요합니다. JSF는 클라이언트 ID를 생성합니다. 그렇지 않으면 JS에서 사용할 수없는 예기치 않은 클라이언트 ID가 자동으로 생성됩니다. 생성 방법을 확인하려면 웹 브라우저에서 페이지를 마우스 오른쪽 버튼으로 클릭하고 소스보기을 선택하십시오.

작은주의 사항이 있지만 JSF에서는 콜론 :UINamingContainer 구분 기호로 사용합니다. formid:checkboxid. 콜론은 CSS에서 잘못된 문자입니다. 어쨌든 CSS/jQuery에서 그들을 선택하려면 백 슬래시로 이스케이프 처리해야합니다. 예 : formid\:checkboxid.

게다가, h:dataTable은 데이터 테이블 ID 다음에 클라이언트 ID에 하나 이상의 식별자, 즉 행 인덱스를 추가합니다. formid:datatableid:0:checkboxid. 그러나 그것은 생성 된 HTML 출력에서 ​​패턴을 볼 때 충분히 분명 해져야합니다.

차례로 h:selectManyCheckbox은 모든 체크 박스에 고유 한 클라이언트 ID와 동일한 클라이언트 이름을 할당합니다. 다시 말하지만 생성 된 HTML 출력을 확인하여 패턴을 확인하십시오.

jQuery에서 jQuery.filter()을 사용하여 클라이언트 ID/이름의 마지막 부분을 기준으로 관심있는 확인란을 필터링 할 수도 있습니다.