Wicket.Ajax: 无法为元素 "radioGroup1d" 上的事件 "click" 绑定侦听器,因为该元素不在 DOM 中

Wicket.Ajax: Cannot bind a listener for event "click" on element "radioGroup1d" because the element is not in the DOM

我在 apache-wicket-7 中有一个带有 RadioGroup 的页面。我想用 ajax 在后端页面 class 中调用一个方法。为此,我添加了:

AjaxFormChoiceComponentUpdatingBehavior

代码:

this.listInput = new RadioGroup<T>("radioGroup", this.model);
       this.listInput.add(new AjaxFormChoiceComponentUpdatingBehavior() {

            private static final long serialVersionUID = 1L;

            @Override
            protected void onUpdate(AjaxRequestTarget arg0) {
                System.out.println("The selected value is " + getComponent().getDefaultModelObjectAsString());
            }
        });

组件 RadioGroup 在较早的 ajax 调用后变得可见,因此它也是异步呈现的。但是当 wicket 尝试渲染组件时,出现错误信息:

Wicket.Ajax:  Cannot bind a listener for event "click" on element "radioGroup1d" because the element is not in the DOM

添加:

setOutputMarkupPlaceholderTag(true)

什么都不做。 如何解决?

此致, 马特乌斯

确保您没有在 HTML 模板中使用 <wicket:cotainer>。那些没有渲染。