java - 数据表/AjaxFallbackDefaultDataTable : How to configure the top toolbar?

标签 java jquery ajax datatable wicket

我目前正在使用 wicket 编写一个 Web 应用程序,在 TableView 中列出一些域 dto。我正在使用 AjaxFallbackDefaultDataTable,它扩展了 wicket 的 DataTable。我想始终显示“显示 25 个,共 280 个”标签,而不仅仅是在页面超过一页时显示(这是默认行为)。我在自定义包装类中添加一个 AjaxFallbackDefaultDataTable ,如下所示:

输入参数列表

List<? extends IColumn<T, String>> iColumns,
ISortableDataProvider<T, String> dataProvider,
int rowsPerPage

DataTable实例化

table = new AjaxFallbackDefaultDataTable<T, String>("table", iColumns, dataProvider, rowsPerPage);

标记

<wicket:panel>
    <table wicket:id="table" class="table data-table">[table]</table> 
 </wicket:panel>

到目前为止我得到了什么

对 AjaxFallbackDefaultDataTable 其他问题的一些答案建议替换 header ,因此我研究了这个主题。据我所知,AjaxFallbackDefaultDataTable正在添加一个包含PagingNavigatorAjaxNavigationToolbar。您始终可以调用 DataTable.getTopToolbars() 来获取 ToolbarsContainer,但随后我陷入困境。我怎样才能走得更远?请帮忙!

最佳答案

我没有替换AjaxFallbackDefaultDataTable中的工具栏,而是从DataTable开始并添加我想要的工具栏。

在您的情况下,如果您需要显示消息“Showing 25 of 280”的 NavigatorToolbar 始终可见,您需要对其进行子类化并将其设置为始终可见。像这样的事情:

public class AlwaysVisibleAjaxNavigationToolbar extends AjaxNavigationToolbar{

    public AlwaysVisibleAjaxNavigationToolbar (final DataTable<?, ?> table)
    {
        super(table);
    }

    @Override
    protected void onConfigure()
    {
        super.onConfigure();
        setVisible(true);
    }

}

关于java - 数据表/AjaxFallbackDefaultDataTable : How to configure the top toolbar?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47222864/

相关文章:

java - 在 Jfreechart 中将条形图与条形图标签对齐

java - Python 服务器和 Java 客户端套接字

javascript - Visual Studio 2010 阻止对某些文件进行 JScript 调试

javascript - 超时调用函数(参数)时递归过多

javascript - Ajax Response 添加在每个元素下

java - 在 2 个对象中使用相同的通用通配符

java - 安卓快速连接/协议(protocol)

javascript - 如何隐藏数据库中没有数据的部分

JavaScript/JQuery 发布订阅无法在两个页面之间工作,但可以在以下代码中的页面内工作

php - jQuery .load 不加载 swfobject 内容