Programing

JSF panelGrid에서 colspan과 rowspan을 설정하는 방법은 무엇입니까?

lottogame 2020. 12. 2. 07:43
반응형

JSF panelGrid에서 colspan과 rowspan을 설정하는 방법은 무엇입니까?


어떻게 설정할 수 있습니다 colspanrowspanJSF에 <h:panelGrid>?


표준 JSF 구현에서는 둘 다 불가능합니다. 이 문제를 해결하는 방법에는 세 가지가 있습니다.

  1. 일반 HTML을 직접 작성하십시오. A는 <h:panelGrid>기본적으로 HTML을 렌더링합니다 <table>. 똑같이하십시오.
  2. 이를 지원하는 사용자 정의 HTML 렌더러를 만듭니다. 그러나 많은 땀과 고통이있을 것입니다.
  3. 이를 지원하는 타사 구성 요소 라이브러리를 사용하십시오.

2012 년 1 월 24 일부터 Primefaces는 Primefaces의 panelGrid 구성 요소에서 colspan 및 rowspan을 사용할 수 있습니다. 보다:

http://www.primefaces.org/showcase/ui/panel/panelGrid.xhtml


취하다

a) 두 항목이있는 메시지 리소스 파일 :
key.row = </ td> </ tr> <tr> <td (공백 무시)
key.gt = >

b) row.xhtml

<ui:composition 
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:ui="http://java.sun.com/jsf/facelets"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:c="http://java.sun.com/jsp/jstl/core" >

    <c:forEach begin="0" end="#{colspan-2}">
        <h:panelGroup />
    </c:forEach>

    <h:panelGroup>
      <h:outputText value="#{i18n['key.row']}" escape="false" />
      <h:outputText value=" colspan='#{colspan}' #{cellAttributes}" />
      <h:outputText value="#{i18n['key.gt']}" escape="false" />

      <ui:insert />
    </h:panelGroup>

</ui:composition>

예를 들어

<h:panelGrid columns="3">
  <h:outputText value="r1-c1" />
  <h:outputText value="r1-c2" />
  <h:outputText value="r1-c3" />

  <ui:decorate template="/row.xhtml">
    <ui:param name="colspan" value="3" />
    <ui:param name="cellAttributes" value=" align='center'" />

    <div>Hello!!!!!</div>
  </ui:decorate> 
</h:panelGroup> 


3 개의 행이있는 표를 인쇄합니다.

1) r1-c1, r1-c2, r1-c3

2) 빈 셀 3 개

3) colspan이 3이고 hello div를 포함하는 셀 정렬 센터 ..

V.


사용 : 부자 : 컬럼 colspan="2"RichFaces

<rich:column colspan="2">                        
<h:outputText  value="Ingrese el texto de la imagen" /> 
</rich:column>  

BalusC의 답변에 동의하며 Primefaces JSF2 구성 요소 라이브러리도 p : dataTable 구성 요소 를 사용하는 경우이 기능을 제공한다는 점을 추가하고 싶습니다 . 거기에서 그룹화라고합니다.


There is no way to define column span in panel grid but if used wisely you can make it happen by just plain tag only. One example I would like to show you.

<h:panelGrid columns="1" >
<h:panelGrid columns="2">
    <h:commandButton image="resources/images/Regular5.jpg" action="booking/Create.jsf?faces-redirect=truebookingType=REGULAR">
    </h:commandButton>
    <h:commandButton id="button2" image="resources/images/Casual2.jpg" action="booking/Create.jsf?faces-redirect=truebookingType=CASUAL">
    </h:commandButton>
</h:panelGrid>
<h:panelGrid columns="2">
    <h:commandButton id="button3" image="resources/images/Instant2.jpg" action="booking/Create.jsf?faces-redirect=truebookingType=INSTANT">
    </h:commandButton>
    <h:commandButton id="button4" image="resources/images/Outstation6.jpg" action="booking/Create.jsf?faces-redirect=truebookingType=OUTSTATION">
    </h:commandButton> 
</h:panelGrid>
<h:commandButton id="button5" image="resources/images/ShareMyCar.jpg" action="booking/Create.jsf?faces-redirect=truebookingType=OUTSTATION">
</h:commandButton>

Please note that button5 spans two columns given the size it requires.

참고URL : https://stackoverflow.com/questions/3111081/how-to-set-colspan-and-rowspan-in-jsf-panelgrid

반응형