0

我有一个要在带有检票口的表格中显示的对象列表。这些对象由一个字符串和一个字符串数组组成。

我的问题是我不知道如何将此数组添加到我的表中。其次,我需要将一些 css 应用于数组的每个字符串,因此它们中的每一个都必须位于不同的 div/span/li 上。

连接所有这些元素并手动添加“div”是个好主意吗?

感谢您的帮助 :)

4

2 回答 2

0

我一直沉迷于使用数据表。通过在列表中使用列表,它工作得很好!

爪哇:

ListView<Profil> listProfil = new ListView<Profil>("listProfils", profils) {
    protected void populateItem(ListItem<Profil> item) {
        Profil tmpProfil = item.getModelObject();
        item.add(new Label("libelle", tmpProfil.getLibelle()));
        item.add( new ListView("listChamps", tmpProfil.getChamps()) {
            protected void populateItem(ListItem item) {
                item.add(new Label("libelleChamps", item.getModel()));
            }
        });
    }
});

以及相关的 HTML 模板:

<tr wicket:id="listProfils">
    <div class="row">
        <td class="col-xs-4 col-md-3 col-lg-3 text">
            <span wicket:id="libelle"></span>
        </td>
        <td class="col-xs-7 col-md-8 col-lg-8 text" colspan="3">
            <span wicket:id="listChamps">
                <span wicket:id="libelleChamps" 
                class="label label-default badge badge-tag" >Champs</span>
            </span>
        </td>
    </div>
</tr >
于 2020-07-23T15:10:09.603 回答
0

作为 Wicket 中的一个很好的做法,要在 HTML 中构建一个从 List 提供的 Table,您需要以下元素:

HTML

<table wicket:id="yourWicketIdOfDataTableObject">[table]
</table>

JAVA

pojoObject代表表中每个元素 ( o regiser) 的POJO ( )

扩展自的 DataProvider ( dataProviderObject) 类SortableDataProvider<pojoObject, String>

您需要根据需要覆盖iterator(),size()model()方法。

一种List<IColumn<pojoObject,String>> columnsObject

上面的对象将代表您的表格的列。

您可以按如下方式添加列:

columnsObject.add(new PropertyColumn<pojoObject,String>(new Model<String>("nameOfTheColum"),pojoObjectPropertyName))

一个 DefaultDataTable tableObject

DataTable<pojoObject, String> = new DefaultDataTable("yourWicketIdOfDataTableObject", columnsObject, dataProviderObject, NumOfColumns)

上面的对象将代表表格。

正如您可能看到的那样,pojoObjectcolumnsObjectanddataProviderObject包裹,这两个将被包裹tableObject在最后。您的数组将在 的iterator()方法中被访问dataProviderObject,因为它需要检索列表的迭代器;代表实际列表中每个元素的pojoObject将是必要的(如果您还没有)

最后,您只需要添加tableObject他们的 Wicket Parent,就像任何其他 Wicket 组件一样。

于 2020-10-29T02:49:44.820 回答