【问题标题】:JSF page reload without the background没有背景的 JSF 页面重新加载
【发布时间】:2014-12-17 00:00:36
【问题描述】:

我必须用 jsf 和 primafecas 做一个网页,但我没有太多经验。我必须更改页面内容而不重新加载所有内容(背景很大)。 我制作了一个菜单(带有工具栏)和一个 iframe 来轻松更改内容(gmap、文本、表单、数据表等)。我知道这是最糟糕的解决方案之一,但我找不到更好的解决方案。

现在我必须从 iframe 更改菜单,但看起来不可能,所以我想使用一个不错的方法来代替 iframe。我尝试了一些东西,但效果不佳,有时我得到重复的 id 错误或没有任何效果,但有时除了菜单之外什么都没有呈现。

现在代码如下所示:

<ui:define name="menu">
        <h:form id="menuForm">
            <p:toolbar activeIndex="#{navigationBean.pageCount}">
                <p:toolbarGroup align="right">
                    <p:commandButton value="menu1" action="#{navigationBean.setUrl(...)}" update=":frmContent,menuForm" />
                    <p:commandButton  value="menu2" action="#{navigationBean.setUrl(...)}" update=":frmContent,menuForm" />
                    <p:commandButton  value="menu3" action="#{navigationBean.setUrl(...)}" update=":frmContent,menuForm" />
                    <p:commandButton  value="menu3"  action="#{navigationBean.setUrl(...)}" update=":frmContent,menuForm"/>
            </p:toolbar>

        </h:form>

</ui:define>

<ui:define name="content">

           <h:form id="frmContent" style="height:100%;width:100%" height="100%" width="100%">
                <iframe src="#{navigationBean.url}" id="frame" frameborder="0" style="height:100%;width:100%" height="100vh" width="100%"/>
       </h:form>

我需要一个工作方法来改变内容或整个页面没有背景。

【问题讨论】:

    标签: jsf primefaces


    【解决方案1】:

    尝试使用

    <ui:include src="#{navigationBean.url}" />
    

    而不是 iframe。

    【讨论】:

    • 我试过了,但是包含的部分没有用。我收到重复的 ID 错误。我解决了这个问题,但没有一个按钮起作用。我应该如何引用包含内部和外部的其他组件?
    • 我重建了您的解决方案,它似乎对我有用。也许这只是“”缺少的结束标签? (您的帖子中没有“”)。
    • 哦,我只是忘了复制它。我又试了一次,有一个小错误导致错误。现在它有效,但只有一次。如果我按下按钮,它不会做任何事情。重新加载页面后,它可以单击 1 次,但再也不会。
    • 我重写了模板文件,一切正常。感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 2011-03-05
    • 1970-01-01
    • 2014-02-05
    • 2019-09-13
    • 1970-01-01
    • 2021-06-01
    • 1970-01-01
    • 2014-03-18
    相关资源
    最近更新 更多