为什么不会部分刷新工作

时间:2014-07-03 10:38:16

标签: javascript xpages

在多个项目上尝试另一个XPage嵌套部分刷新。当名为conTenderType值的组合列表框随onChange事件更改并刷新面板ContractWorkflowPanel和ContractDetailPanel时,将发生刷新。所有面板都在djTabContainer中。目标面板组件上不需要渲染条件。我已尝试在客户端javascript中为conTenderType onChange事件显示如下所示的脚本,但它不起作用。我也尝试将onComplete更改为onStart等。为什么不能这样做?

XSP.partialRefreshPost("#{id:conTenderType}", {
  onComplete: function() {
  XSP.partialRefreshGet("#{id:ContractWorkflowPanel}", {
      onComplete: function() { XSP.partialRefreshGet("#{id:ContractDetailPanel}"); }
  }) 
}
})

由于

1 个答案:

答案 0 :(得分:0)

是否有任何经过验证的字段?除非"处理数据未经验证"勾选后,将进行验证。 (防止验证发生的另一种方法是勾选"不验证或更新数据",但是您不会使用用户为组合框选择的值更新服务器端组件树,因此没有必要设置它。)

如果未设置execId,则验证页面上的所有控件。如果验证失败,则发送回浏览器的唯一更新将是验证失败的错误消息。

我总是建议确保您的刷新区域包含错误消息控件,以便您知道验证是否失败。如果您不需要验证,请勾选"处理数据而不进行验证"。如果您这样做,并且您不想刷新包含错误消息控件的区域,则需要设置execId,但是您需要阅读并理解它的作用,以确保用户输入的值将根据需要进行更新,而不会被对浏览器的响应覆盖。