【发布时间】:2017-03-27 15:45:41
【问题描述】:
我用next 和previous 按钮创建了简单的分页。
我的分页不起作用。
$(document).ready(function () {
empRoles()
var table = $('#myTable');
var sta = 0;
var pageNum = 1;
var elements_per_page = 3;
var roleList;
var limit = elements_per_page;
$('#newroleName,#searchroleName').focus(function () {
$('.requiredField').hide();
$('#newroleName').removeClass('error');
});
$('.searchClear').click(function () {
$('.requiredField').hide();
$('#searchroleName').removeClass("error");
$('#searchroleName').val("");
empRoles()
});
function empRoles() {
pagination(roleList)
$('#content').html('');
for (var i = sta; i < limit; i++) {
var table = '<tr id="' + roleList[i].Id + '"><td>' + (i + 1) + '</td><td class="roleName" id="name' + i + '">' + roleList[i].name + '</td><td><button class="btn edit btn-info btn-sm" id="edit' + i + '"><i class="fa fa-pencil"></i>Edit</button><button class="btn update btn-success btn-sm" id="update' + i + '"><i class="fa fa-floppy-o"></i>Update</button><button class="btn dlt btn-danger btn-sm" onclick="deleteRow(this)" data-dismiss="modal" id="dlt' + i + '"><i class="fa fa-trash-o"></i>Delete</button><button class="btn editCancel btn-danger btn-sm" id="editCancel' + i + '" ><i class="fa fa-times"></i>Cancel</button></td><tr>';
$('#content').append(table);
editUpdate();
}
}
function pagination(starting_row,max_size) {
var max_size = roleList.length;
$('.paginationList').append('<input type="text" class="btn col-lg-11 col-md-11 col-xs-12" id="pageNo" readonly="readonly">');
$('.paginationList input').val(pageNum);
}
$(document).on('click', "#nextValue", function () {
debugger
var max_size = roleList.length;
var starting_row = limit;
if (max_size >= starting_row) {
pageNum = eval(pageNum + 1);
ending_row = limit + elements_per_page;
limit = ending_row
table.empty();
if (limit > max_size) {
ending_row = max_size;
}
$('.paginationList input').val(pageNum);
pagination(starting_row, ending_row);
}
});
$(document).on('click', "#PreValue", function () {
var max_size = roleList.length;
var pre = limit - (2 * elements_per_page);
if (pre >= 0) {
pageNum = eval(pageNum - 1);
limit = limit - elements_per_page;
table.empty();
$('.paginationList input').val(pageNum);
pagination(pre, limit);
}
if (pre < 0 && pageNum != 1) {
var pre = limit;
limit = (pageNum * 2) + (limit - 1);
table.empty();
$('.paginationList input').val(pageNum);
pagination(pre, limit);
}
});
});
我不知道出了什么问题。请参考这个小提琴
https://jsfiddle.net/tt5Lr2a2/
【问题讨论】:
-
请在问题中添加代码 - 人们不应该点击离开就能提供帮助 - 创建代码 sn-p 而不是/以及小提琴
-
JSFiddle 的工作代码很好,但请确保也将相关代码发布到 StackOverflow 问题。
-
还要添加静态数据而不是db调用,以帮助别人帮助你..
-
请将您的代码放在这里,并确保您只向我们展示仍然重现问题所需的相关代码,而不是您的所有代码。马上,这将很难重现,因为我们无法获取您的数据库记录,因此我们的表将始终为空。也许您也可以(在此处发布代码旁边)向我们提供指向您的实时项目的链接,如果它在任何地方都存在的话。此外,我看到你在没有返回数据时调用了一个函数 NoData()(这对我们来说总是会发生)但是这个函数不存在,导致 ReferenceError。
-
请检查我的第二个小提琴。我正在尝试用 ajax 在我的第一个小提琴中实现它。
标签: jquery