json分页

本文主要探讨了在JSON数据返回中实现分页的方法,详细介绍了数据格式设计、分页信息创建以及两种不同的分页实现策略,旨在帮助开发者优化数据加载和用户界面的交互体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JSON分页
1、传回json的数据格式,写出表格,表格后面调用下面两个方法
2、创建分页信息

 <!-- 分页文字信息 :拿到控制器处理请求时封装在pageInfo里面的分页信息-->
                	<div class="col-md-6" id="page_info_area1">
               			 </div>
               			 <!-- 分页码 -->
               			 <div class="col-md-6" id="page_nav_area1">
                       		<!-- 
                         		   1.pageContext.request.contextPath表示当前项目路径,采用的是绝对路径表达方式。一般为http:localhost:8080/项目名 。
                          			  2.首页,末页的逻辑:pn=1访问第一次,pn=${pageInfo.pages}访问最后一页
                       		-->
                      		 <!-- 如果还有前页就访问当前页码-1的页面, -->
                      		 <!--遍历所有导航页码,如果遍历的页码页当前页码相等就高亮显示,如果相等就普通显示  -->
                       		<!-- 如果还有后页就访问当前页码+1的页面, -->
               		 </div>

3、方法一

/**
		创建分页信息墒情
	*/
	function build_pagination_info1(result){
	$("#page_info_area1").empty();
	//得到服务器返回的jason数据里的分页信息,然后拼接
	var pageNum =当前页;
	var pages =总页数;
	var total = 总条数;
	$("#page_info_area1").append("当前"+pageNum+"页,共"+pages+"页,总"+total+"条记录");
	}

4、方法二

/**
		创建分页导航条:
		根据bootstrap文档里的分页说明,使用jquery创建元素。
	*/
	function build_pagination_nav1(result){
	$("#page_nav_area1").empty();
	//首页
	var fristPageLi = $("<li></li>").append($("<a></a>").attr("href","#").append("首页"));
	//前一页
	var prePageLi = $("<li></li>").append($("<a></a>").attr("href","#").append($("<span></span>").append("&laquo;")));
    //如果没有前一页,就让按钮不能被点击,否则绑定点击事件,重新发送ajax请求,访问相应页面
    if(当前页 == 1){
        fristPageLi.addClass("disable");
        prePageLi.addClass("disable");
    }
    else{
        fristPageLi.click(function(){
        	表格方法(1);
        });
        prePageLi.click(function(){
        		表格方法(当前页 -1);
        });
    }
	var ul = $("<ul></ul>").addClass("pagination").append(fristPageLi).append(prePageLi);
	 var navigatepageNums=[];
		for(var i=1;i<=总页数;i++){
			navigatepageNums.push(i);
		 }
		$.each(navigatepageNums,function(index,element){
	        var numLi = $("<li></li>").append($("<a></a>").attr("href","#").append(element));
	            //如果遍历的页码等于当前页面,就高亮显示,然后添加点击事件,如果有点击,就重新发送ajax请求,访问当前页面(pn=element)
	            if(result.page==element){
	                numLi.addClass("active");
	            }
	            numLi.click(function(){
	            	表格方法名(element);
	            })
	        ul.append(numLi);
	    })
	//下一页
	var nextPageLi = $("<li></li>").append($("<a></a>").attr("href","#").append($("<span></span>").append("&raquo;")));
	//末页
	var lastPageLi = $("<li></li>").append($("<a></a>").attr("href","#").append("末页"));
    //如果没有后一页,就让按钮不能被点击,否则绑定点击事件,重新发送ajax请求,访问相应页面
    if(当前页 == 总页数){
        nextPageLi.addClass("disable");
        lastPageLi.addClass("disable");
    }
    else{
        nextPageLi.click(function(){
        	表格方法(当前页 +1);
        });
        lastPageLi.click(function(){
        	表格方法(总页数);
        });
    }
	ul.append(nextPageLi).append(lastPageLi);
	$("<nav></nav>").append(ul).appendTo("#page_nav_area1");
	}
	

5、页码部分

 var navigatepageNums=[];
		for(var i=1;i<=result.totalPages;i++){
			navigatepageNums.push(i);
		 }
		$.each(navigatepageNums,function(index,element){
	        var numLi = $("<li></li>").append($("<a></a>").attr("href","#").append(element));
	            //如果遍历的页码等于当前页面,就高亮显示,然后添加点击事件,如果有点击,就重新发送ajax请求,访问当前页面(pn=element)
	            if(result.page==element){
	                numLi.addClass("active");
	            }
	            numLi.click(function(){
	            	sqDate(element);
	            })
	        ul.append(numLi);
	    })
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值