如何推迟打开Xpage中的视图

时间:2014-06-23 14:20:05

标签: xpages

在我的Xpage中,我在页面顶部有一个搜索条件,在底部有一个视图。用户将选择一些搜索条件,然后单击搜索,我在视图上进行FT搜索。

我想避免在第一次打开xpage时加载视图,因为这需要花费很多时间。我怎么能这样做?

1 个答案:

答案 0 :(得分:7)

使用视图控件的呈现的属性。如果搜索字段为空,则返回 false 表示渲染属性,如果填充,则返回 true

示例:

<xp:inputText
    id="inputText1"
    value="#{viewScope.search}">
</xp:inputText>
<xp:button
    value="Search"
    id="button1">
    <xp:eventHandler
        event="onclick"
        submit="true"
        refreshMode="partial"
        refreshId="viewForSearch">
    </xp:eventHandler>
</xp:button>
<xp:panel
    id="viewForSearch">
    <xp:viewPanel
        rows="30"
        id="viewPanel1"
        rendered="#{javascript:viewScope.search}">
        ... pager ... view ... columns ...
    </xp:viewPanel>
</xp:panel>

搜索字段存储在视图范围变量&#34; search&#34;中。如果它为空,则rendered="#{javascript:viewScope.search}"返回false并且视图未呈现。只要用户输入搜索字符串并单击搜索按钮#{javascript:viewScope.search},就会返回true并且视图可见。

部分刷新视图控制面板,单击搜索按钮。