基于Jquery+Ajax+Json实现分页显示

本文详细介绍了如何使用JavaScript和jQuery实现动态分页查询及页面数据渲染,通过获取JSON数据并解析,展示在网页上,同时实现了翻页功能,包括上一页、下一页、跳转到指定页等操作。

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

function getJSONData(pn) {
	// alert(pn);
	$.getJSON("blackList.ce", function(data) {
		var totalCount = data.totalCount; // 总记录数
		var pageSize = 10; // 每页显示几条记录
		var pageTotal = Math.ceil(totalCount / pageSize); // 总页数
		var startPage = pageSize * (pn - 1);
		var endPage = startPage + pageSize - 1;
		var $ul = $("#json-list");
		$ul.empty();
		for (var i = 0; i < pageSize; i++) {
			$ul.append('<li class="li-tag"></li>');
		}
		var dataRoot = data.jsonRoot;
		if (pageTotal == 1) {     // 当只有一页时
			for (var j = 0; j < totalCount; j++) {
				$(".li-tag").eq(j).append("<span class='col1'><input type='checkbox' value='"+parseInt(j + 1)+"'/></span>")
				.append("<span class='col2'>" + parseInt(j + 1)
						+ "</span>").append("<span class='col3'>" + dataRoot[j].mobile
						+ "</span>").append("<span class='col4'>" + dataRoot[j].province
						+ "</span>").append("<span class='col5'>" + dataRoot[j].gateway
						+ "</span>").append("<span class='col6'>" + dataRoot[j].insertTime
						+ "</span>").append("<span class='col7'>" + dataRoot[j].remark
						+ "</span>")
			}
		} else {
			for (var j = startPage, k = 0; j < endPage, k < pageSize; j++, k++) {
				if( j == totalCount){
					break;       // 当遍历到最后一条记录时,跳出循环
				}
				$(".li-tag").eq(k).append("<span class='col1'><input type='checkbox' value='"+parseInt(j + 1)+"'/></span>")
				.append("<span class='col2'>" + parseInt(j + 1)
						+ "</span>").append("<span class='col3'>" + dataRoot[j].mobile
						+ "</span>").append("<span class='col4'>" + dataRoot[j].province
						+ "</span>").append("<span class='col5'>" + dataRoot[j].gateway
						+ "</span>").append("<span class='col6'>" + dataRoot[j].insertTime
						+ "</span>").append("<span class='col7'>" + dataRoot[j].remark
						+ "</span>")
			}
		}
		$(".page-count").text(pageTotal);
	})
}
function getPage() {
	$.getJSON("blackList.ce", function(data) {
				pn = 1;
				var totalCount = data.totalCount; // 总记录数
				var pageSize = 10; // 每页显示几条记录
				var pageTotal = Math.ceil(totalCount / pageSize); // 总页数
				$("#next").click(function() {
							if (pn == pageTotal) {
								alert("后面没有了");
								pn = pageTotal;
							} else {
								pn++;
								gotoPage(pn);
							}
						});
				$("#prev").click(function() {
							if (pn == 1) {
								alert("前面没有了");
								pn = 1;
							} else {
								pn--;
								gotoPage(pn);
							}
						})
				$("#firstPage").click(function() {
							pn = 1;
							gotoPage(pn);
						});
				$("#lastPage").click(function() {
							pn = pageTotal;
							gotoPage(pn);
						});
				$("#page-jump").click(function(){
					if($(".page-num").val()  <= pageTotal && $(".page-num").val() != ''){
						pn = $(".page-num").val();
						gotoPage(pn);
					}else{
						alert("您输入的页码有误!");
						$(".page-num").val('').focus();
					}
				})
				$("#firstPage").trigger("click");
				
			})
}
function gotoPage(pn) {
	// alert(pn);
	$(".current-page").text(pn);
	getJSONData(pn)
}
 
$(function() {
	getPage();
})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值