希望这是一件容易补救的事情。我在理解jQuery Pagination插件时遇到了一点问题。
实际上,我所要做的就是加载一个PHP文件,然后对结果进行分页。我试图从他们的例子中脱颖而出,但我没有得到我想要的结果。
下面是JavaScript:
function pageselectCallback(page_index, jq){
var new_content = $('#hiddenresult div.result:eq('+page_index+')').clone();
$('#Searchresult').empty().append(new_content);
return false;
}
function initPagination() {
var num_entries = $('#hiddenresult div.result').length;
// Create pagination element
$("#Pagination").pagination(num_entries, {
num_edge_entries: 2,
num_display_entries: 8,
callback: pageselectCallback,
items_per_page:3
});
}
$(document).ready(function(){
$('#hiddenresult').load('load.php', null, initPagination);
}); 下面是我的HTML (在加载PHP之后):
<div id="Pagination" class="pagination"> </div>
<br style="clear:both;" />
<div id="Searchresult"> </div>
<div id="hiddenresult" style="display:none;">
<div class="result">Result #1</div>
<div class="result">Result #2</div>
<div class="result">Result #3</div>
<div class="result">Result #4</div>
<div class="result">Result #5</div>
<div class="result">Result #6</div>
<div class="result">Result #7</div>
</div>基本上,我试图显示"3“项每页,但这是行不通的。我假设在某个地方,我将需要在我的JS中创建一个for循环,但我对如何做到这一点感到困惑。The documentation can be found here。
发布于 2009-10-06 01:55:25
您甚至不需要使用for循环,只需使用jQuery的slice()方法和一些数学运算即可。
我在JS Bin上主持了一个工作演示:http://jsbin.com/upuwe (可通过http://jsbin.com/upuwe/edit编辑)
以下是修改后的代码:
var pagination_options = {
num_edge_entries: 2,
num_display_entries: 8,
callback: pageselectCallback,
items_per_page:3
}
function pageselectCallback(page_index, jq){
var items_per_page = pagination_options.items_per_page;
var offset = page_index * items_per_page;
var new_content = $('#hiddenresult div.result').slice(offset, offset + items_per_page).clone();
$('#Searchresult').empty().append(new_content);
return false;
}
function initPagination() {
var num_entries = $('#hiddenresult div.result').length;
// Create pagination element
$("#Pagination").pagination(num_entries, pagination_options);
}https://stackoverflow.com/questions/1523163
复制相似问题