2014-11-15 1 views
1

내 panelGrid 안쪽을 클릭하면 내부 commandButton에서 액션이 실행됩니다. .. 양식h : 빈 공간을 클릭 한 후 panelGrid 액션 실행

JSF : 전체 accordionPanel은 시간 안에

<p:accordionPanel value="#{test.getAllTests()}" var="currentTest" activeIndex="false"> 
     <p:tab title="#{currentTest.name}"> 
     <h:panelGrid columns="2" cellpadding="10"> 
      <p:graphicImage value="resources/img/testIT/#{currentTest.imageSrc}" width="100" height="100" /> 
      <p:outputLabel> 
       <h2>#{currentTest.name}</h2> 
       <p>#{currentTest.description}</p> 
       <p:commandButton value="Zvolit test" styleClass="testChoseButton" actionListener="#{test.setSelectedTest(currentTest)}" action="testProgress.xhtml" /> 
       <p:spacer height="5px" width="20px" style="float: right;" /> 
       <p:button value="Statistika testu" styleClass="testChoseButton" /> 
      </p:outputLabel>  
     </h:panelGrid> 
    </p:tab> 
</p:accordionPanel> 

test.setSelectedTest (currentTest) :

public void setSelectedTest(Test selectedTest) { 
    this.selectedTest = selectedTest; 
    System.err.println("Selected test: " + selectedTest.getId() + " - " + selectedTest.getName()); 

} 

내가 더 당신이 사람을 필요로 할 수 모르겠어요. 도움을 청합니다.

답변

1

p:outputLabel을 오용하고 있습니다. 원하는 내용이 아닌 <label> 요소를 생성합니다. 내가 생각하는 것 두 가지 작동합니다 : h:panelGroup

p:outputPanel

    • 그들은 모두가 HTML span 또는 layout 속성을 기반으로 div를 생성 할 수 있습니다.

      저는 정확히이 종류의 그룹화를위한 것입니다 <h:panelGroup> 걸릴 거라고.

  • +0

    굉장! 당신 말이 맞아요. 나는 단지 내 실수를 다시 써야만했다. ... 설명 해줘서 고마워! –