xPages - 寻呼机 onClick 事件问题
Posted
技术标签:
【中文标题】xPages - 寻呼机 onClick 事件问题【英文标题】:xPages - Pager onClick Event issue 【发布时间】:2014-06-06 15:22:10 【问题描述】:我正在尝试在数据视图中的寻呼机上放置一个 onClick 事件。我希望 onClick 事件更新 sessionScope 变量。我已经添加了代码并对其进行了测试,但我无法让它工作。我制作了一个测试按钮并使用相同的 onClick 事件进行设置,并且变量已正确更新。
现在,如果我单击分页器,它可以正常工作并通过 dataView 进行分页。但是,它不会更新 sessionScope 变量。有什么想法可能导致这种情况吗?
<xp:pager partialRefresh="true" id="pager8" xp:key="pagerBottomLeft"
styleClass="mblFooterLeft">
<xp:this.rendered><![CDATA[#javascript:isPagerDisplayed();
]]></xp:this.rendered>
<xp:pagerControl id="pagerControl2" type="Previous">
<xp:eventHandler event="onclick" submit="true"
refreshMode="partial" refreshId="testLabel">
<xp:this.action><![CDATA[#javascript:incPagerDisplay();
sessionScope.pagerDisplay++;]]></xp:this.action>
</xp:eventHandler>
</xp:pagerControl>
</xp:pager>
任何帮助将不胜感激。
【问题讨论】:
我不确定这是您的代码的问题。似乎事件不会从xp:pagerControl
(reference link) 触发(客户端或服务器)。
【参考方案1】:
当您要求对 sessionScope 的变量进行 onClick 事件更新时,从您的代码看来,您的最终尝试是保存用户所在的页面状态,所以他们可以导航离开/返回并从 sessionScope 变量中保留它。假设这就是你想要做的所有事情,我建议你查看并使用xe:pagerSaveState control。
Brad Balassaitis 写了a blog post 将它与数据视图一起使用,这可能会对您有所帮助。 Oliver Busse 稍微调整了实现,demonstrates with his OSnippet;对 SSJS 调用的按摩。
这里是Oliver's snippet:
<xe:pagerSaveState id="pagerSaveState1" refreshId="theView" partialRefresh="true">
</xe:pagerSaveState>
<xp:this.beforePageLoad><![CDATA[#javascript:viewStateBean.restoreState = true;]]></xp:this.beforePageLoad>
【讨论】:
@user3641366 尝试使用寻呼机保存状态控制是否成功?以上是关于xPages - 寻呼机 onClick 事件问题的主要内容,如果未能解决你的问题,请参考以下文章