2011-02-07 8 views
1

내 응용 프로그램에 대한 모달 창을 만들려고하지만 불행히도 그렇게 할 수 없습니다.개찰구 모달 창이 제대로 표시되지 않습니다.

나는 WebPage을 확장하는 페이지가 있으며 여기에 Panel을 확장 한 패널이 추가되었습니다. 페이지와 패널은 별도로 작성됩니다. 즉, panel.javapage.java입니다. 자, this Wicket Examples example (source)의 도움으로 패널에 모달 창을 추가했습니다. 그러나 페이지가 렌더링 될 때 — 페이지의 요소 —을 검사하여 divwicket:id이고 "modal1"이 속성이 script="display: none" 인 것으로 확인되었습니다. 나는 무엇을해야할지 모른다. 모든 정보는 나에게 매우 도움이 될 것입니다.

한 가지 더 : 있습니다

return new ModalContent1Page(ModalWindowPage.this.getPageReference(), modal1); 

return new ModalContent1Page(ModalWindowPage.this, modal1); 

같은?


편집 : 문제가 해결
. 실제로 내가 질문을했을 때 나는 그 코드를 가지고 있지 않았다. RoseIndia의 자습서를 따르고 있었지만 성공하지 못했으며 Wicket 1.3.1을 사용할 때 PageReference 클래스를 사용할 수 없습니다. 그래서 다음과 같이 해결합니다 :

final ModalWindow modalWindow; 
    add(modalWindow = new ModalWindow("modalVideo")); 

    modalWindow.setCookieName("modal-video"); 
    modalWindow.setCssClassName(ModalWindow.CSS_CLASS_GRAY); 
    modalWindow.setResizable(false); 
    modalWindow.setInitialHeight(215); 
    modalWindow.setInitialWidth(215); 
    modalWindow.setHeightUnit("px");   

    modalWindow.setPageCreator(new ModalWindow.PageCreator() { 
     public Page createPage() { 
      return new PlayVideo(ItemViewPanel.this.getPage(), modalWindow, itemId); 
     } 
    }); 

    AjaxLink showModalLink; 
    add(showModalLink = new AjaxLink("showModal") { 
     @Override 
     public void onClick(AjaxRequestTarget target) { 
        modalWindow.show(target); 
     } 
    }); 

감사합니다.

+2

질문에 약간의 코드를 추가 할 수 있습니까? 나는 당신을위한 해결책을 찾아 내려고 노력할 것이지만 나는 어디서부터 시작해야할지 모른다. – biziclop

답변

0

두 번째 질문에 대답하려면 : 아니오, 두 줄의 코드는 동일하지 않습니다. ModalWindowPage.this은 페이지 자체이므로 유형은 ModalWindowPage입니다. 반면에 getPageReference()은 동일한 계층 구조가 아닌 PageReference을 반환합니다.

+0

@Torgamus 감사합니다. –

관련 문제