우선, jQuery 선택기는 정말 강력합니다!
프로젝트에서 easyui에서 이런 문제가 발생했습니다
사진과 같이 현재 페이지에는 "Original Message Query" 페이지가 표시되는데, 당시 왼쪽 네비게이션 바가 선택되어 있었습니다 . "재전송 메시지 쿼리" 입니다. 오른쪽 메뉴와 왼쪽 탐색을 연결하는 방법: 왼쪽의 "Original Message Query"를 클릭한 다음 오른쪽의 "Reissue Arrival Message"를 확장하고 "Original Message Query", "Backstage" Manage"를 선택합니다. ?
구현 방법은 다음과 같습니다:
1. 오른쪽의 "원본 메시지 쿼리"는 easyui의 탭 컨트롤을 사용하여 탭에 onSelect 메서드가 있는지 확인합니다. onSelect에 있습니다. 메서드에서 수행하려는 작업을 작성하면 됩니다.
2. 트리거 이벤트를 찾았는데, 원하는 효과를 얻으려면 어떻게 해야 하나요?
왼쪽 탐색 모음의 코드 결과는 위와 같습니다. 가장 바깥쪽 레이어는 easyui의 아코디언 컨트롤입니다. 아코디언에는 하나의 패널이 그림 1의 상위 디렉터리에 해당합니다. 예를 들어 "Reissue Arrival Report" 모듈이 있습니다. 패널에는 두 개의 div가 있습니다.
첫 번째 div는 상위 디렉터리이고 두 번째 div에는 많은 하위 디렉터리가 포함되어 있습니다.
먼저 오른쪽의 탭을 선택하면 그에 해당하는 왼쪽의 내비게이션 바가 선택됩니다. 먼저 모든 하위 디렉터리의 선택된 상태를 제거한 다음 현재 하위 디렉터리가 선택되도록 합니다.
$('#idaccordion li div') .removeClass( "선택됨");
$('#idaccordionspan:contains("' 제목 '")').parent().parent().addClass("선택됨")
3. 문제는 선택해야 할 항목을 선택했는데, 선택한 하위 메뉴의 상위 메뉴가 확장되지 않는 현상입니다. easyui의 패널에는 확장 방법이 있는데 어떤 패널(상위 메뉴)을 확장해야 하는지 어떻게 알 수 있나요? 그림 2에 표시된 대로 "원본 메시지 쿼리"가 선택되었으며 이제 재발행 도착 보고서의 상위 메뉴를 확장해야 합니다. "원본 메시지 질의"가 위치한 요소 범위의 조상 노드의 형제 노드의 첫 번째 자식 노드는 "교체 도착 보고"가 위치한 노드이다.
if( $('#idaccordionspan: 포함(" ' 제목 '")').length > 0 ){
var 아코디언Title = $('#idaccordion 범위:contains("' 제목 '")').closest('.panel-body') .prev( ).find('.panel-title').text();
var p = $('#idaccordion').accordion('getPanel',accordionTitle)
p.panel(' Expand') ;
}
먼저 ID가 idaccordion인 하위 노드에서 텍스트 제목이 포함된 범위를 검색합니다(예:
원본 메시지 query), panel-body 클래스를 사용하여 가장 가까운 조상 노드를 찾은 다음 이 노드의 이전 형제 노드를 찾습니다(예:
성명:본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.