【问题标题】:How to move within only one part of the page如何仅在页面的一部分内移动
【发布时间】:2012-05-17 00:00:32
【问题描述】:

我已经阅读了许多主要由 BalusC 编写的答案,但仍然没有运气。
因此,我通过 ajax 渲染在主页的一部分中包含了一个页面,并且它运行良好,每当我单击主栏上的按钮时,子页面 xhtml 都会显示在适当的位置。现在的问题是我想在那个子页面中实现一个“selectOneMenu”,所以每当用户点击其中一个选项时,他将被重定向到另一个应该出现在页面同一部分(而不是前一页)的 xhtml .我已经想到了很多解决这个问题的想法(包括条件渲染),但我相信必须有更简单、更正确的方法来解决它。也许 JSF 有某种可以使用的容器标签? 附言 顺便说一句,这是我的第一篇文章,如果我没有说清楚,我很抱歉。 更新 在我看来,也许我应该以某种方式使用 ajax onValueChange 来读取值(通过 actionListener ?),因此当用户单击子页面时,主页将读取值并使用新内容呈现部分。这可能吗?

【问题讨论】:

  • THX user1101422 回答虽然,看来我缺乏亮度导致我什至问这个问题。对于那些可能遇到类似问题的人(尽管我对此表示怀疑..) ui:composition 标记之间的所有内容都表现为它是包含它的页面的一部分,因此答案是只呈现其中包含的 panelGroup该子页面。

标签: jsf jsf-2 xhtml


【解决方案1】:

您可以使用 valueChange Listener 获取新值,并在您的 bean 中使用 FacesContext 您可以重定向页面,但如果您不希望刷新页面,请确保将 ajax 调用添加到您的 selectonemenu。

            <h:selectOneMenu value="#{some.value}"
    valueChangeListener="#{some.valuechanged}">
    <f:ajax event="change" listener="#{some.listen}" />
    </h:selectOneMenu>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-08
    • 2015-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多