首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Wicket FeedbackPanel未显示

Wicket FeedbackPanel未显示
EN

Stack Overflow用户
提问于 2014-10-18 15:16:16
回答 1查看 2.5K关注 0票数 2

我有几页的表格。每个表单都有一个提交的AjaxButton和一个

代码语言:javascript
复制
<div wicket:id="feedback"></div>

用于反馈面板。每个表单字段都是必需的,FeedbackPanel将正确地填充来自验证器的错误消息,以防遗漏一个字段。问题是,只有当我在浏览器上单击“回退”,然后“转发”再次查看页面时,这些消息才会显示出来,无论我将反馈<div>放在页面中的哪个位置。

直到后退/向前手势,才会出现错误消息,但表单不会到达onSubmit() (显然,存在验证错误)。

这个问题对于我所有有表单和FeedBackPanel的页面来说都是常见的。所有页面都使用Bootstrap 3.2.0,以防万一会有任何不同。

有什么线索吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-18 15:43:56

使用Ajax时,必须添加组件,希望将这些组件更新到AjaxRequestTarget中。将由Ajax更新的组件必须具有预定义的标记id。

因此,您必须为您的setOutputMarkupId(true)调用FeedbackPanel方法,并为AjaxButton重写onError方法:

代码语言:javascript
复制
... = new AjaxButton (...) {

         ...

         @Override
         protected void onError(final AjaxRequestTarget target, final Form form) {
             /*here add your feedback panel to be updated via ajax*/
             target.addComponent(feedbackPanel);
         }
     }
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26441269

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档