2016-04-12 26 views
0

Aşağıdaki betik kullanılarak varsayılan olarak veri sayfasını 2. sayfa ile yükleyebiliyorum.Veri yığınları yüklenirken sayfa numarası değil sayfa numarası nasıl iletilir?

jQuery(document).ready(function() { 
     dataTable = jQuery('#tableid').DataTable({ 
     processing: true, 
     serverSide: true, 
     "displayStart": 10, 
"ajax":{ 
    url :"load_browser_two_data.php, 
    type: "POST" 
     } 
}) 
}); 

Yukarıdaki komut dosyasını kullanarak ikinci sayfayı yükleyebiliyorum. Ancak sayfa boyutu yerine sayfa numarasını geçmem gerekiyor ("displayStart": 10). Bunu nasıl başarabilirim? Herhangi bir yardım büyük takdir edilecektir.

+0

Neden doğru şekilde hesaplamak için bir işlev çağırma? Mantıklı olur mu? İhtiyaca göre – Maxime

+0

numaralı sayfa numarası yeterlidir. Bunu nasıl yapacağınızı önerebilir misiniz? – user3408779

+0

Burada açıklanan özellik bu değil mi? http://stackoverflow.com/questions/16496054/jquery-datatables-how-can-i-change-the-current-page-programmatically – Marc

cevap

1

Sadece çok sevdiği sayfa numarası üzerinden boyutunu hesaplamak:

"displayStart": (pageNumber - 1) * 10 

pageNumber = 2 üretecektir 10. 3 => 20, vb

Sen önerdiği gibi hesaplayabilir ancak sorun varsa olduğunu
+0

Bu mükemmel çalıştı, teşekkürler – user3408779

1

Sayfa boyutunu değiştirmek isterseniz, bunu DataTable ayarında ve formülünüzde değiştirmeniz gerekir.

önlemek için, aynı zamanda yerli page() işlevini kullanabilirsiniz: İşte https://datatables.net/reference/api/page()#Example

nasıl kullanılacağı üzerine bir örnektir: Ayrıca daha deferLoading okuyabilirsiniz

var table = $('#example').DataTable({ 
    "deferLoading": 0 /* This won't load initial data */ 

    // Your config comes here 
    // ... 
}); 

// Get the data for page 7 and draw the DataTable 
table.page(7).draw(false); 


// For reference... 

// Go to next page 
table.page('next').draw('page'); 

// Go to previous page 
table.page('previous').draw('page'); 

.

İlgili konular