วิธีลบเลขหน้าใน datatable


92

ฉันเป็นคนใหม่ใน jQuery ฉันใช้ Datatables ในตาราง แต่ไม่จำเป็นต้องแบ่งหน้า

มีรายการคำสั่งซื้อในหน้าเดียวและฉันแสดงในตาราง Datatable แต่ด้านล่างฉันไม่ต้องการแสดงการแบ่งหน้า มีวิธีใดบ้างในการลบหรือซ่อนการแบ่งหน้าจากตารางข้อมูลโดยใช้การปรับแต่งบิตบนไลบรารี jQuery

ป้อนคำอธิบายภาพที่นี่

ฉันพยายามปรับแต่ง แต่ฉันพบวิธีการน้อยมาก ..

ขอบคุณล่วงหน้า.


2
คุณใช้วิธีการหรือปลั๊กอินใด
Naryl

คำตอบ:


163

คุณควรรวม"bPaginate": false,ไว้ในออบเจ็กต์การกำหนดค่าที่คุณส่งผ่านไปยังพารามิเตอร์ตัวสร้างของคุณ ดังที่เห็นที่นี่: http://datatables.net/release-datatables/examples/basic_init/filter_only.html


1
หากฉันต้องการแสดงเฉพาะ 100 บรรทัดแรกของข้อมูล bPaginate จะไม่ทำงานเนื่องจากจะแสดงข้อมูลทั้งหมดโดยไม่คำนึงถึงพารามิเตอร์ iDisplayLength ของฉัน คุณรู้วิธีหลีกเลี่ยงสิ่งนั้นหรือไม่?
Alexis Dufrenoy

แก้ไขฉันถ้าฉันผิด แต่ถ้าคุณแสดงเพียง 100 รายการแรกและปิดใช้งานการแบ่งหน้าผู้ใช้จะไม่มีทางแสดงผลลัพธ์ต่อไปนี้ ถ้าเป็นเช่นนั้นคุณควรลองเปลี่ยนแหล่งข้อมูลโดยตรง ดูเหมือนว่าจะเป็นปัญหาอื่นดังนั้นคุณควรพิจารณาเปิดคำถามใหม่และให้รหัสของคุณกับเรา
nstCactus

1
จริงๆแล้วมันมีไว้สำหรับฟังก์ชั่นการค้นหาและฉันยังต้องแสดงข้อความที่แจ้งว่าผู้ใช้ต้องเปลี่ยนเกณฑ์การค้นหาของเธอเนื่องจากมีการดึงข้อมูลมา สำหรับบันทึกนี้ฉันถามในฟอรัม Datatables และวิธีแก้ปัญหาคือเพิ่มตัวเลือก: sDom = lfrt (โดยไม่มี "p" หากไม่มีการแบ่งหน้า) อาจมีประโยชน์ ...
Alexis Dufrenoy

72

ปิดหน้าเพจ

สำหรับ DataTables 1.9

ใช้bPaginateตัวเลือกเพื่อปิดใช้งานการแบ่งหน้า

$('#example').dataTable({
    "bPaginate": false
});

สำหรับ DataTables 1.10+

ใช้pagingตัวเลือกเพื่อปิดใช้งานการแบ่งหน้า

$('#example').dataTable({
    "paging": false
});

ดูjsFiddle นี้สำหรับโค้ดและการสาธิต

ลบการควบคุมหน้าและออกจากหน้าที่เปิดใช้งาน

สำหรับ DataTables 1.9

ใช้sDomตัวเลือกเพื่อกำหนดค่าองค์ประกอบการควบคุมที่จะปรากฏบนเพจ

$('#example').dataTable({
    "sDom": "lfrti"
});

สำหรับ DataTables 1.10+

ใช้domตัวเลือกเพื่อกำหนดค่าองค์ประกอบการควบคุมที่จะปรากฏบนเพจ

$('#example').dataTable({
    "dom": "lfrti"
});

ดูjsFiddle นี้สำหรับโค้ดและการสาธิต


2
สำหรับ 1.10+ การระบุdata-paging='false'องค์ประกอบตารางก็ใช้ได้เช่นกัน
Jeromy French

21

มันใช้งานได้

ลองใช้โค้ดด้านล่าง

$('#example').dataTable({
    "bProcessing": true,
    "sAutoWidth": false,
    "bDestroy":true,
    "sPaginationType": "bootstrap", // full_numbers
    "iDisplayStart ": 10,
    "iDisplayLength": 10,
    "bPaginate": false, //hide pagination
    "bFilter": false, //hide Search bar
    "bInfo": false, // hide showing entries
})

20
$(document).ready(function () {
            $('#Grid_Id').dataTable({
                "bPaginate": false
            });
        });

ฉันได้แก้ปัญหาของฉันโดยใช้มัน


12
$('#table_id').dataTable({    
    "bInfo": false, //Dont display info e.g. "Showing 1 to 4 of 4 entries"
    "paging": false,//Dont want paging                
    "bPaginate": false,//Dont want paging      
})

ลองใช้รหัสนี้


6

หากคุณต้องการลบการแบ่งหน้าและ แต่ต้องการจัดลำดับ dataTable ให้เพิ่มสคริปต์นี้ที่ท้ายหน้าของคุณ!

<script>
$(document).ready(function() {        
    $('#table_id').DataTable({
        "paging":   false,
       "info":     false
    } );
      
  } );
</script>


-1

นี่คือทางเลือกที่เป็นการปรับปรุงเพิ่มเติมสำหรับคำตอบอื่น ๆ สมมติว่า settings.aLengthMenu ไม่ใช่หลายมิติ (อาจเป็นได้เมื่อ DataTables มีความยาวของแถวและป้ายกำกับ) และข้อมูลจะไม่เปลี่ยนแปลงหลังจากการโหลดหน้า (สำหรับ DataTables ที่โหลด DOM แบบง่าย) สามารถแทรกฟังก์ชันนี้เพื่อกำจัดการเพจได้ มันซ่อนคลาสที่เกี่ยวข้องกับการเพจหลายคลาส

บางทีการตั้งค่าการเพจเป็นเท็จในฟังก์ชันด้านล่างอาจมีประสิทธิภาพมากขึ้น แต่ฉันไม่เห็นการเรียก API สำหรับมือนอกนั้น

$('#myTable').on('init.dt', function(evt, settings) {
    if (settings && settings.aLengthMenu && settings.fnRecordsTotal && settings.fnRecordsTotal() < settings.aLengthMenu[0]) {
        // hide pagination controls, fewer records than minimum length
        $(settings.nTableWrapper).find('.dataTables_paginate, .dataTables_length, .dataTables_info').hide();
    }
}).DataTable();
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.