在Wicket DefaultTableTree中是否可以使用AJAX页面导航?

问题描述 投票:0回答:1

我们使用的是DefaultTableTree,它工作得很好,除了页面上还有其他内容,而且我希望分页仅更新表内容而不是刷新整个页面。

[我注意到DefaultTableTree的构造函数构造了NavigationToolBar(非AJAX):

public DefaultTableTree(String id, List<? extends IColumn<T, S>> columns, ISortableTreeProvider<T, S> provider, int rowsPerPage, IModel<Set<T>> state) {
        super(id, columns, provider, (long)rowsPerPage, state);
        this.getTable().addTopToolbar(new NavigationToolbar(this.getTable()));
        this.getTable().addTopToolbar(new HeadersToolbar(this.getTable(), provider));
        this.getTable().addBottomToolbar(new NoRecordsToolbar(this.getTable()));
        this.add(new Behavior[]{new WindowsTheme()});
}

是否有某种形式的对此行为的替代,以使其创建AjaxNavigationToolBar而不是此非AJAX版本的导航器?

如果没有,在构造DefaultTableTree之后,简单地删除该导航器并将其替换为AJAX版本应该可以吗?

java wicket
1个回答
1
投票

DefaultTableTree只是其抽象超类的默认实现,带有工具栏和主题的某些配置:

https://github.com/apache/wicket/blob/master/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/tree/DefaultTableTree.java

直接将TableTree子类化并根据需要进行配置可能会更容易。

© www.soinside.com 2019 - 2024. All rights reserved.