2014-09-25 3 views
0

GWT의 일반 html을 사용하여 메뉴를 만들었습니다. GWT 사용자 정의 빌드 메뉴에 동적 메뉴 항목 추가

\t <g:HTMLPanel> 
 
\t \t <div id="navigation"> 
 
\t \t  <div id="menuLeft" class="menu"> 
 
\t \t \t \t <ul> 
 
\t \t \t \t \t <li> 
 
\t \t \t \t \t \t <g:Anchor ui:field="homeLink" styleName="active"><i class="fa fa-home"></i>&nbsp;Home</g:Anchor> 
 
\t \t \t \t \t </li> 
 
\t \t \t \t \t 
 
\t \t \t \t \t <li class="active"> 
 
\t \t \t \t \t \t <a href="#"><i class="fa fa-suitcase"></i>&nbsp;Businesses</a> 
 
\t \t \t \t \t \t <ul ui:field="businessesMenu"> 
 
\t \t \t \t \t \t \t <li> 
 
\t \t \t \t \t \t \t \t <g:Anchor ui:field="enrollBusiness">Enroll Business </g:Anchor> 
 
\t \t \t \t \t \t \t </li> 
 
          </ul> 
 
         </li> 
 
        </ul> 
 
       .....

것은 제공된 매우 훌륭하게 사용 CSS로 렌더링된다. 이 시점까지는 모든 것이 잘되어 이제는 요구 사항이됩니다. 여기에 몇 가지 비즈니스 로직을 기반으로 동적 메뉴 항목을 추가해야합니다. 즉, 기존 메뉴에 더 많은 것을 추가해야합니다.

동적 항목을 작성/추가 할 수는 있지만 이벤트 처리기를 추가 할 수 없습니다.

도움을 주시면 감사하겠습니다.

답변

0

Dom을 사용하여 동적 메뉴를 추가하는 경우이를 참조하여 클릭 핸들러를 추가 할 수 있습니다. you can refer this to add handlers.

+0

안녕하세요. 제안 된 수정 프로그램을 구현했지만 해결책이 제시된 것과 똑같은 해결책을 찾지 못했습니다. LIElement menuItem = Document.get(). createLIElement(); 앵커 항목 링크 = 새 앵커(); itemLink.setText ("Business 1"); itemLink.addClickHandler (새로운 경우 clickHandler() { 공개 무효 온 클릭 (ClickEvent 이벤트) { \t \t \t }}); \t \t element linkElement = itemLink.getElement(); menuItem.appendChild (linkElement); businessesMenu.appendChild (menuItem); DOM.sinkEvents (linkElement, Event.getTypeInt (ClickEvent.getType(). getName()) | DOM.getEventsSunk (linkElement)); – Grandhe

관련 문제