var ajaxUrl;
var showDivName;
var ajaxFunctionName;
jQuery.extend({
pageAjax: function(url,div,functionName){
ajaxUrl=url;
showDivName=div;
ajaxFunctionName=functionName;
$.ajax({
url:url,
data:{"pageRequest.page":$('#pagePage').val(),"pageRequest.rows":$('#pageRows').val()},
dataType: "json",
success: function(data){
eval(functionName+"(data)");
$.changePageAjax(data);
showWin(div);
}
});
},
pageAjaxOfParam: function(url,div,functionName,key,value){
$.ajax({
url:url,
data:{"pageRequest.page":$('#pagePage').val(),"pageRequest.rows":$('#pageRows').val(),"key":key,"value":value},
dataType: "json",
success: function(data){
eval(functionName+"(data)");
$.changePageAjax(data);
showWin(div);
}
});
}
,
changePageAjax: function(data) {
var totalCount = data.totalCount;
changeDefaultRows(data);
var pageCount = totalCount % parseInt($("#pageRows").val())== 0 ?
parseInt(totalCount/parseInt($("#pageRows").val())):
parseInt(totalCount/parseInt($("#pageRows").val()))+1;
$("#totalPage").html(pageCount+'');
$("#totalCount").html(totalCount+'');
changeButton(pageCount);
}
});
function changePage(pageTitle) {
if(pageTitle == "previous"){
$('#pagePage').val(parseInt($('#pagePage').val()) - 1);
}else if(pageTitle == "next"){
$('#pagePage').val(parseInt($('#pagePage').val()) + 1);
}else if(pageTitle == "first"){
$('#pagePage').val(1);
}else if(pageTitle == "last"){
var totalCount = parseInt($('#totalCount').html());
$('#pagePage').val(parseInt((totalCount - 1) / parseInt($('#pageRows').val()) + '') + 1);
}
go();
}
function goToPointedPage(){
var pointedPageNum = $('#forwardPageNum').val();
var patrn = /^\+?[1-9][0-9]*$/;
if(!patrn.exec(pointedPageNum)){
alert('页数请输入正整数');
return;
}
if(parseInt(pointedPageNum) > parseInt($('#totalPage').html())){
alert('输入页数不得超过最大页数');
return;
}
$('#pagePage').val(parseInt(pointedPageNum));
go();
}
function changeButton(pageCount){
$('#forwardPageNum').val($('#pagePage').val());
if(pageCount == 1){
$("#beforePage").attr("disabled","disabled");
$("#firstPage").attr("disabled","disabled");
$("#nextPage").attr("disabled","disabled");
$("#lastPage").attr("disabled","disabled");
}else if($("#forwardPageNum").val() < pageCount){ //如果页数比总页数小,则下一页和末页能用
$("#nextPage").removeAttr("disabled");
$("#lastPage").removeAttr("disabled");
if($("#forwardPageNum").val() >1){ //如果页数大于1,说明 1<页数<总页数 说明全部都可用
$("#firstPage").removeAttr("disabled");
$("#beforePage").removeAttr("disabled");
}else{ //在页数比总页数小的其他情况下,就只存在一种就是等于1
$("#firstPage").attr("disabled","disabled"); //当等于1 的时候,首页和上一页不可用
$("#beforePage").attr("disabled","disabled");
}
} else{
$("#beforePage").removeAttr("disabled");
$("#firstPage").removeAttr("disabled");
$("#nextPage").attr("disabled","disabled");
$("#lastPage").attr("disabled","disabled");
}
}
function changeDefaultRows(data){
if($("#pageRows").val()==null||$("#pageRows").val()==""){
$("#pageRows").empty();
$("#pageRows").append("");
}
}
function changeRows(){
$('#pagePage').val(1);
go();
}
function go(){
$.pageAjax(ajaxUrl,showDivName,ajaxFunctionName);
}
function clearPageInfo(){
$("#pagePage").val('1');
}
$(function(){
$("body").keydown(function(event){
if(event.keyCode == 13){
goToPointedPage();
}
});
});
script>
/
共条
要明白ajax请求的时候是刷新你特定的部门,我一开始就在这里出了问题。其实在做分页的时候,给后台传值,只是当前页和每页的显示个数,其他没了,分页的按钮和下方的列表是分离的,不用去联系,这样能使问题简单。时间有限就这样了,仔细看代码就可以了。