Wicket是否支持嵌套机箱,从1.5开始?

时间:2012-07-12 10:00:30

标签: wicket wicket-1.5

我在使用嵌套机箱时遇到了一些问题,我想知道它是否是我编码中的错误,或者我正在尝试的用法是不是本机支持的。

像:

<wicket:enclosure child="primary">
    <wicket:message key="primary.select">Primary Server</wicket:message>
    <select id="primary" wicket:id="primary"></select>
    <wicket:enclosure child="backup">
        <wicket:message key="backup.label"/>
        <span id="backup" wicket:id="backup"></span>
    </wicket:enclosure>
</wicket:enclosure>

问题在于是否可以像这样使用HTML,我想在开始寻找可见性控制器上的问题之前确保这一点。

我已经挖掘了一些文档和搜索引擎一段时间了,但是没有找到任何提及支持或不支持的嵌套机箱。

谢谢!

1 个答案:

答案 0 :(得分:1)

很抱歉这么晚的回复,我没有看到你的评论。

我不相信有任何与嵌套有关的文件限制&lt; wicket:enclosure&gt;标签;但是,已经记录的标签还有一些其他限制。

第一个限制记录在Wicket tag doc

  

在Ajax回调方法中更改子组件的可见性不会影响整个机箱,只会影响子组件本身。这是因为只添加了子组件   到AjaxRequestTarget。

  

如果机箱下面直接有多个wicket组件,则必须通过在机箱的子属性中提供其ID来指定哪一个控制可见性:

第二,关于使用&lt; wicket:enclosure&gt;隐藏FormComponents有一个关闭的issue。标签。基本上,标签隐藏的任何FormComponent仍将在表单提交上进行验证。如果您查看日志,则会针对此问题提供警告消息。

注意: Wicket的“记录”一词有些含糊不清。我想你只需要习惯拼凑各种来源的信息,以便找到问题的答案。如有疑问,请尝试查找源代码的javadoc或内联注释。这些通常是最好的文件来源。