DataTablesプラグインに関してご協力をお願いします。
以下のように、datatablesWebサイトのセットアップドキュメントに従ってすべてのセットアップを行いました。
$("#DataTableNuse").DataTable(
{
ordering: true,
bLengthChange: false,
iDisplayLength: 10,
bFilter: false,
pagingType: "full_numbers",
bInfo: false,
dom: "Bfrtip",
buttons:
[
{ extend: 'pdf', text: 'Exportar PDF', title: 'Nuse' },
{ extend: 'Excel', text: 'Exportar Excel', title: 'Nuse' }
],
language:
{
emptyTable: "<li class='text-danger' align='center'>NUSE não encontrada</li>",
paginate:
{
previous: "<",
next: ">",
first: "|<",
last: ">|"
}
}
});
また、「full_numbers」の代わりに「full」オプションも試してみました。
すべて正常に機能していますが、問題は、顧客の基準に正しく準拠するようにレイアウトを変更する必要があることです。
以下のような新しいレイアウトが必要です。
どこ:
">"は10分の10をページングします
「>>」は20分の20をページングします
「|>」最後のページ
誰でも私にそれを手に入れることができました。
前もって感謝します。
宜しくお願いします、
チアゴ
次のように手動で行う必要がある場合があります。
https://jsfiddle.net/7ramuk9c/1/
初めて、およびテーブルが描画されるたびに、<<および>>ボタンを追加します。
addExtraButtons();
$('#example').on("draw.dt", function(e) {
addExtraButtons();
})
必要に応じて無効にします。
if (currentPage.page == 0) {
$(".quick_previous").addClass("disabled")
}
<<および>>ボタンにイベントを追加します。
function quickPrevious(e) {
var pageToGoTo = (currentPage.page - 2) <= 0 ? 0 : (currentPage.page - 2);
table.page(pageToGoTo).draw(false);
}
これはもう1つのかなりハッキーな解決策です jsFiddle ですが、クイックショットを探している場合は、次のコードですべてのデータテーブルの前/次ボタンを<
と>
に変更します、特定のテーブルのみをターゲットにする場合は、draw.dt
イベントのセレクターを変更するだけです。
異なるデータテーブルタイプは異なるレンダリング方法を持っています、私はそれらのいくつかのために3つの異なるsetCustomPagingSigns
関数を作成しました:
$(".dataTable").on("draw.dt", function (e) {
setCustomPagingSigns.call($(this));
}).each(function () {
setCustomPagingSigns.call($(this)); // initialize
});
// this should work with standard datatables styling - li.previous/li.next
function setCustomPagingSigns() {
var wrapper = this.parent();
wrapper.find("li.previous > a").text("<");
wrapper.find("li.next > a").text(">");
}
// - a.previous/a.next
function setCustomPagingSigns() {
var wrapper = this.parent();
wrapper.find("a.previous").text("<");
wrapper.find("a.next").text(">");
}
// this one works with complex headers example, bootstrap style
function setCustomPagingSigns() {
var wrap = this.closest(".dataTables_wrapper");
var lastrow= wrap.find("div.row:nth-child(3)");
lastrow.find("li.previous>a").text("<");
lastrow.find("li.next>a").text(">");
}