JSF Primefaces左、中布局

JSF Primefaces左、中布局,jsf,menu,primefaces,Jsf,Menu,Primefaces,当我点击“左”菜单中的按钮时,我不明白如何在中央屏幕上显示 现在我有了,当我点击我的“左”菜单按钮,新的页面打开没有“左”菜单,但我不想要它,我需要的是“左”菜单没有消失 下面是我的代码 <h:head> <title>Facelet Title</title> </h:head> <frameset rows="65,*" frameborder="0"> <frame scrolling=

当我点击“左”菜单中的按钮时,我不明白如何在中央屏幕上显示

现在我有了,当我点击我的“左”菜单按钮,新的页面打开没有“左”菜单,但我不想要它,我需要的是“左”菜单没有消失

下面是我的代码

<h:head>
    <title>Facelet Title</title>
</h:head>
   <frameset rows="65,*" frameborder="0">
            <frame scrolling="no" src="header.xhtml"/>
            <frameset cols="200,*" frameborder="0">
                    <frame scrolling="no" src="menu.xhtml"/>
             </frameset>
    </frameset>

Facelet标题

您的描述有点令人困惑,但我认为JSF模板系统正是您所追求的,它使您能够在多个页面上包含相同的代码(例如菜单)。相框已经过时,基本上不再使用

请参见第页的示例


作为进一步的评论,这个问题似乎与Primefaces(它是一个组件包,所有这些评论都不包含在您的代码中)无关。

您的描述有点混乱,但我认为JSF模板系统正是您所追求的,使您能够在多个页面上包含相同的代码(例如菜单)。相框已经过时,基本上不再使用

请参见第页的示例


作为进一步说明,此问题似乎与Primefaces(一个组件包,这些注释都不包含在代码中)无关。

基本上,您需要为目标帧指定一个
名称
,并在
目标
属性中指定它

在使用PrimeFaces时,还有另一种选择,
,比如说

另见:

基本上,您需要给目标帧一个
名称
,并在
目标
属性中指定它

在使用PrimeFaces时,还有另一种选择,
,比如说

另见:

    • 这里是一个简单的页眉、页面和页脚示例。不管你信不信,你都可以使用一个表单id。标题位于WebContent/templates中。另一个.xhtml可以放在WebContent中。如果@ManagedBean字符串方法返回“second”,则将显示second.xhtml页面。每个页面仍然与它自己的@ManagedBean对话

      <body">
      <f:view>
      <div id="container">
      <h:form id="templateForm">
          <div id="header">
              <ui:include src="header.xhtml" />
          </div>
      
          <div id="wrapper">
              <div id="firstId">
                  <ui:insert name="first"></ui:insert>
              </div>
              <div id="secondId">
                  <ui:insert name="second"></ui:insert>
              </div>
              <div id="inputMaskId">
                  <ui:insert name="inputMask"></ui:insert>
              </div>
              <div id="valtestId">
                  <ui:insert name="valtest"></ui:insert>
              </div>
          </div>
      
          <div id="footer">
              <ui:include src="footer.xhtml" />
          </div>
      </h:form>
      </div>      
      </f:view>
      </body>
      

      以下是一个简单的页眉、页面和页脚示例。不管你信不信,你都可以使用一个表单id。标题位于WebContent/templates中。另一个.xhtml可以放在WebContent中。如果@ManagedBean字符串方法返回“second”,则将显示second.xhtml页面。每个页面仍然与它自己的@ManagedBean对话

      <body">
      <f:view>
      <div id="container">
      <h:form id="templateForm">
          <div id="header">
              <ui:include src="header.xhtml" />
          </div>
      
          <div id="wrapper">
              <div id="firstId">
                  <ui:insert name="first"></ui:insert>
              </div>
              <div id="secondId">
                  <ui:insert name="second"></ui:insert>
              </div>
              <div id="inputMaskId">
                  <ui:insert name="inputMask"></ui:insert>
              </div>
              <div id="valtestId">
                  <ui:insert name="valtest"></ui:insert>
              </div>
          </div>
      
          <div id="footer">
              <ui:include src="footer.xhtml" />
          </div>
      </h:form>
      </div>      
      </f:view>
      </body>
      

      我们可以改用布局
      包含命名空间
      xmlns:p=”http://primefaces.org/ui"

      
      

      这将呈现五个面板

      我们可以使用布局 包含命名空间 xmlns:p=”http://primefaces.org/ui"

      
      
      这将呈现五个面板

      <!DOCTYPE html>
      <html lang="en"
          xmlns="http://www.w3.org/1999/xhtml"
          xmlns:f="http://java.sun.com/jsf/core"
          xmlns:h="http://java.sun.com/jsf/html"
          xmlns:ui="http://java.sun.com/jsf/facelets">
          <h:head>
              <title><ui:insert name="title">Default title</ui:insert></title>
          </h:head>
          <h:body>
              <div id="header"><ui:include src="/WEB-INF/includes/header.xhtml"></div>
              <div id="menu"><ui:include src="/WEB-INF/includes/menu.xhtml"></div>
              <div id="content"><ui:insert name="content">Default content</ui:insert></div>
          </h:body>
      </html>
      
      <ui:composition template="/WEB-INF/templates/layout.xhtml"
          xmlns="http://www.w3.org/1999/xhtml"
          xmlns:f="http://java.sun.com/jsf/core"
          xmlns:h="http://java.sun.com/jsf/html"
          xmlns:ui="http://java.sun.com/jsf/facelets">
      
          <ui:define name="title">
              New page title here
          </ui:define>
      
          <ui:define name="content">
              <h1>New content here</h1>
              <p>Blah blah</p>
          </ui:define>
      </ui:composition>
      
      <body">
      <f:view>
      <div id="container">
      <h:form id="templateForm">
          <div id="header">
              <ui:include src="header.xhtml" />
          </div>
      
          <div id="wrapper">
              <div id="firstId">
                  <ui:insert name="first"></ui:insert>
              </div>
              <div id="secondId">
                  <ui:insert name="second"></ui:insert>
              </div>
              <div id="inputMaskId">
                  <ui:insert name="inputMask"></ui:insert>
              </div>
              <div id="valtestId">
                  <ui:insert name="valtest"></ui:insert>
              </div>
          </div>
      
          <div id="footer">
              <ui:include src="footer.xhtml" />
          </div>
      </h:form>
      </div>      
      </f:view>
      </body>
      
      <p:layout fullPage="true">
      <p:layoutUnit position="north" size="100" header=
      "Top" resizable="true" closable="true" collapsible="true">
      <h:outputText value="Layout content for North" />
      </p:layoutUnit>
      <p:layoutUnit position="south" size="100" header="Bottom"
      resizable="true" closable="true" collapsible="true">
      <h:outputText value="Layout content for South" />
      </p:layoutUnit>
      <p:layoutUnit position="west" size="200" header=
      "Left" resizable="true" closable="true" collapsible="true">
      <h:outputText value="Layout content for West" />
      </p:layoutUnit>
      <p:layoutUnit position="east" size="200" header=
      "Right" resizable="true" closable="true" collapsible="true">
      <h:outputText value="Layout content for Right" />
      </p:layoutUnit>
      <p:layoutUnit position="center">
      <h:outputText value="Layout content for Center" />
      </p:layoutUnit>
      </p:layout>