在数据表的Tabview中看不到Paginator

时间:2012-01-04 20:23:29

标签: tabs datatable pagination tabview yui2

好吧,我有一个有tabview容器的网页。容器有三个选项卡。所有这些都包含数据表。每个数据表都不同。当我为数据表设置分页器并在配置下时,它工作得非常好。在第一个选项卡上。其他两个选项卡不会获得分页器的链接/按钮/选项。我可以更改第一个数据表上的值,它反映在另外两个数据表上。知道我做错了什么或我能做什么?非常感谢你!

1 个答案:

答案 0 :(得分:0)

嗯......我睡了个好觉,回答了我自己的问题。您需要创建一个config var并将containers属性设置为每个数据表的不同值(例如:pagination1,pagination2,pagination3)。在HTML标记中,您需要创建两个div容器,第一个标记id必须设置为数据表的容器名称,第二个标记id设置为分页器的容器名称。

<div class="yui-content">
    <div id="tab1">
        <div id="datatable1" class="yui-dt-nowrap"></div>
        <div id="pagination1"></div>
    </div>
    <div id="tab2">
        <div id="datatable2" class="yui-dt-nowrap"></div>
        <div id="pagination2"></div>
    </div>
    <div id="tab3">
        <div id="datatable3" class="yui-dt-nowrap"></div>
        <div id="pagination3"></div>
    </div>
</div>

var configs = {
    paginator: new YAHOO.widget.Paginator({
        rowsPerPage: 25,
        template: YAHOO.widget.Paginator.TEMPLATE_ROWS_PER_PAGE,
        rowsPerPageOptions: [25,50,100],
        pageLinks: 5,
        containers: "pagination1"
    }), 
    width :"99%", 
    draggableColumns:true, 
    formatRow: descriptionToTitleFormatter
};

var datatable1 = new YAHOO.widget.ScrollingDataTable("datatable1",
    columnTitles, datasource1, configs);

    datatable1.subscribe("rowMouseoverEvent", datatable1.onEventHighlightRow);
    datatable1.subscribe("rowMouseoutEvent", datatable1.onEventUnhighlightRow);
});

configs = {
    paginator: new YAHOO.widget.Paginator({
        rowsPerPage: 25,
        template: YAHOO.widget.Paginator.TEMPLATE_ROWS_PER_PAGE,
        rowsPerPageOptions: [25,50,100],
        pageLinks: 5,
        containers: "pagination2"
    }), 
    width :"99%", 
    draggableColumns:true, 
    formatRow: descriptionToTitleFormatter
};

var datatable2 = new YAHOO.widget.ScrollingDataTable("datatable2",
    columnTitles, datasource2, configs);

    datatable2.subscribe("rowMouseoverEvent", datatable2.onEventHighlightRow);
    datatable2.subscribe("rowMouseoutEvent", datatable2.onEventUnhighlightRow);
});
... and so on...