我正在尝试使用IndicatingAjaxButton的onSubmit提交表单时更新和呈现组件。但是,一旦onSubmit完成,所有组件都会被渲染。有什么方法可以在我的表单仍在提交时呈现它们,比如在表单提交时显示更新进度条。我希望在每次休息调用执行时显示进度。 这大致就是我在做的事情:
{{1}}
答案 0 :(得分:2)
最好的方法是使用Wicket Native WebSockets。使用IWebSocketRequestHandler
,您可以在长时间操作期间更新Wicket组件和/或发送原始文本(JSON,HTML)。你可以根据需要推多次,例如显示百分比的进展。
另一个更简单的解决方案是在进行Ajax调用(表单提交)之前使用AjaxCallListener#onBeforeSend()回调来使用JavaScript进行UI更新。使用这种方法,您只有一次拍摄,即您可以显示加载指示,但无法显示当前进度。