Paginator не отображается в Tabview для Datatables - PullRequest
0 голосов
/ 05 января 2012

Хорошо, у меня есть веб-страница с контейнером вкладок.Контейнер имеет три вкладки.Все из которых содержат таблицы данных.Каждый набор данных отличается.Когда я настраиваю paginator для datatables и под конфигами, он работает чудесно.На первой вкладке это.Две другие вкладки не получают ссылки / кнопки / параметры для пагинатора.Я могу изменить значения в первой таблице данных, и это отражается на двух других таблицах данных.Есть идеи, что я делаю неправильно или что я могу сделать?Большое вам спасибо!

1 Ответ

0 голосов
/ 05 января 2012

Ну ... я ответил на свой вопрос с хорошим ночным сном. Вам необходимо создать конфигурационную переменную var и установить для свойства контейнера разные значения для каждого объекта данных (например, pagination1, pagination2, pagination3). В разметке HTML необходимо создать два контейнера div, для первого идентификатора тега должно быть указано имя контейнера для таблицы данных, а для второго - имя контейнера для paginator.

<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...
...