상위 목록 항목에 하위 항목이 있는 경우 링크에 클래스를 추가하는 방법은 무엇입니까?
문제
저는 "유니버설 뷰어" 웹 파트와 계층적 변환을 사용하여 Kentico 6에서 부트스트랩 메뉴를 구축하고 있습니다.지금까지 구조를 완료했지만 부모가 링크에 "드롭다운 메뉴" 클래스를 추가하는 방법을 알 수 없습니다. <li>
자녀가 있습니다.
지금 생성 중인 코드는 다음과 같습니다.
<ul class="nav navbar-nav">
<li>
<a href="#">Some link</a>
<ul>...</ul>
</li>
</ul>
그리고 나는 이것을 달성하려고 노력하고 있습니다 :
<ul class="nav navbar-nav">
<li>
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Some link</a>
<ul>...</ul>
</li>
</ul>
클래스와 데이터는 부모인 경우에만 추가해야 합니다. <li>
가지다 <ul>
내부에 내장되어 있습니다.
매크로 변환을 사용해야 합니까, 아니면 ascx 변환을 사용하여 이를 달성할 수 있는 방법이 있습니까?
해결책
일부 하위 노드의 경우 항상 드롭다운이 있는 경우 사용할 수 있습니다. NodeChildNodesCount
값.
<a href="#" <%# ((int)Eval("NodeChildNodesCount") > 0) ? "class=\"dropdown-toggle\" data-toggle=\"dropdown\"" : "" %>>Some link</a>
문서 유형과 같은 추가 조건이 있는 경우 해당 특정 조건에 대한 하위 노드 수를 검색해야 합니다.문서 API, 도우미 클래스 또는 ASCX 변환을 통해 직접 달성할 수 있습니다.TreeProvider 클래스를 찾으세요.이는 성능 집약적인 작업일 수 있습니다.또한 클라이언트측에 자바스크립트로 드롭다운 클래스를 추가하는 것도 고려해 보겠습니다.
제휴하지 않습니다 StackOverflow