2013-08-19 62 views
1

几个月前我问过这个问题,但一直没有回应,所以我想我会再试一次。我有一个SSJS块来处理一些值。有些计算字段会受到这些更改的影响,并且显示不正确。我在XPage上有一个刷新按钮,它会进行部分刷新,之后一切正常。我需要以某种方式触发对特定项目(本例中为面板)的部分刷新,作为SSJS中afterPageLoad的最后一步。 有什么建议吗?xpages如何强制部分刷新afterPageLoad

感谢

+0

哪里是你的SSJS运行,是它改变了什么价值? –

回答

3

刷新从SSJS面板没有一个按钮,链接或类似的东西是有点棘手。

但我认为你的问题更多地位于你想要计算你的字段的顺序中,在这些字段被渲染之前在erlier事件中触发你的代码,以避免首先显示错误的值, maby发布一些示例代码。

如果您只想刷新面板后再次在页面豆装入尝试这种在onClientLoad ClientEvent这也可以解决这个问题:

<xp:eventHandler event="onClientLoad" submit="false"> 
     <xp:this.script><![CDATA[dojo.ready(function(){ 
    XSP.partialRefreshGet('#{id:yourPanel}',{}) 

});]]></xp:this.script> 
    </xp:eventHandler> 
+0

我的问题是我在beforePageLoad事件过程中在页面上的控件中加载了一堆值(使用相同的结果尝试afterPageLoad),它从查找的配置文件中加载 - 这一切正常。我在XPage上显示或不显示基于从配置文件加载的值的按钮。但直到我从按钮手动刷新panelAll时,这些按钮才能正确呈现。从那一刻起,一切运作良好。正如你所说,我认为这个问题与事件的顺序有关。 –