避免向Wicket的ListView提供带有正文的html元素

时间:2015-09-24 08:26:31

标签: html css listview wicket

我正在尝试将嵌套的Wicket ListView结构显示为类似 <div>结构的html 表。这是因为我希望此表的某些部分在运行时更改其可见性,因此希望添加WebMarkContainers然后对它们进行操作。
由于这是最像是一个html问题,我首先只发布html。

<form wicket:id="matrixForm">
    <div class="table">
        <div class="table-header-group">
            <div class="table-row">
                <div class=table-cell></div>
                <div class=table-cell></div>
                <div wicket:id="columnsList" class="table-cell">
                    <div wicket:id="zustLabel"></div>
                </div>
            </div>
        </div>
        <div class="table-row-group">
            <div wicket:id="groupsList" class="table-row">
                <div wicket:id="groupLabel" class="table-cell"></div>               
                <div wicket:id="rowsList">
                    <div wicket:id="erhebungLabel" class="table-cell"></div>
                    <div wicket:id="cellList" class="table-cell">
                        <div wicket:id="cell">
                            <input wicket:id="checkbox" type="checkbox">
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</form>

基本上我不会有这个<div wicket:id="rowsList">,但我需要一个元素来映射我的ListView。 生成的结构是:

<div class="table">
<div class="table-header-group">
    <div class="table-row">
        <div class="table-cell"></div>
        <div class="table-cell"></div>
        <div class="table-cell">
            <div>zustLabel</div>
        </div>
        <div class="table-cell">
            <div>zustLabel</div>
        </div>
        <div class="table-cell">
            <div>zustLabel</div>
        </div>
    </div>
</div>
<div class="table-row-group">
    <div class="table-row">
        <div class="table-cell">groupLabel</div>
        <div ><!-- This is the rowsList div -->
            <div class="table-cell">erhebungLabel</div>
            <div class="table-cell">
                <div class="checked" id="cell15">
                    <input type="checkbox" checked="checked">
                </div>
            </div>
            <div class="table-cell">
                <div class="unchecked" id="cell18">
                    <input type="checkbox">
                </div>
            </div>
            <div class="table-cell">
                <div class="unchecked" id="cell17">
                    <input type="checkbox">
                </div>
            </div>
        </div>
    </div>
</div>

我标记了<div>我不想发表评论。甚至可以在table-row-group中生成与table-header-group中相同的结构?
标有“xxxList”的每个元素代表一个ListView,所以:

  • columnsList 显示表格标题
  • groupsList 以包装属于一起的行
  • rowsList 显示组的子类别
  • cellList 使用复选框填充空白字段

它更像是授权矩阵而不是数据表。我给了类适当的display:[table element]属性,使它们像表一样。

Fiddle Demo

1 个答案:

答案 0 :(得分:4)

您可以使用

&lt; wicket:container wicket:id =“rowsList”&gt;&lt; / wicket:container&gt;

而不是&lt; div&gt;