【发布时间】:2014-06-23 14:20:05
【问题描述】:
在我的 Xpage 中,我在页面顶部有搜索条件,在底部有一个视图。用户将选择一些搜索条件,然后单击搜索,然后我在视图上进行 FT 搜索。
我想避免在第一次打开 xpage 时加载视图,因为这需要很多时间。我该怎么做?
【问题讨论】:
标签: xpages
在我的 Xpage 中,我在页面顶部有搜索条件,在底部有一个视图。用户将选择一些搜索条件,然后单击搜索,然后我在视图上进行 FT 搜索。
我想避免在第一次打开 xpage 时加载视图,因为这需要很多时间。我该怎么做?
【问题讨论】:
标签: xpages
使用视图控件的 rendered 属性。如果搜索字段为空,则为呈现的属性返回 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>
搜索字段存储在视图范围变量“搜索”中。如果它是空的,那么 rendered="#{javascript:viewScope.search}" 返回 false 并且视图不会被渲染。只要用户输入搜索字符串并单击搜索按钮 #{javascript:viewScope.search} 就会返回 true 并且视图变得可见。
点击搜索按钮部分刷新视图控制面板。
【讨论】: