当前位置: 代码迷 >> Web前端 >> jQuery 兑现分页导航
  详细解决方案

jQuery 兑现分页导航

热度:177   发布时间:2012-11-22 00:16:41.0
jQuery 实现分页导航
今天把之前写的js代码整理了一下,为了能够达到比较好的通用效果,通过使用了jquery库,代码更加简洁了,jQuery确实很不错,当然说到这里,使用我这个分页导航是要导入jQuery的核心库的,下面就看看这段js代码吧!

/**
 * 分页导航
 * @param {} fnName		翻页时执行的函数名(这个函数当然是要大家自己写的,需要注意的是该函数需要有两个参数{type, pageIndex}, type:操作类型,pageIndex:当前页码,具体的实现还是要大家自己去构想的)
 * @param {} type		 	操作类型
 * @param {} pageIndex 	当前页码
 * @param {} pagetotal		总页码
 * @param {} totalItem		总记录数
 * @param {} showID		页面显示分页导航条的div  ID(id=“showDiv”就传入‘showDiv’)
 * 
 *  08/12/23
 */
function pageNavigation(fnName, type, pageIndex, pagetotal, totalItem, showID) {
	
	// 无帖子
	if (pagetotal == 0) {
		$('#' + showID).empty();//清空翻页导航条
		return;
	}
	// 分页
	var front = pageIndex - 4;// 前面一截
	var back = pageIndex + 4;// 后面一截

	$('#' + showID).empty();//清空翻页导航条
	
	// 页码链接
	// 首页, 上一页
	if (pageIndex == 1) {
		$('#' + showID).append("首页 上一页");
	} else {
		var fn = fnName + "(" + type + ", 1)"; //组装执行的函数
		var str = "首页 ";//创建连接
		$('#' + showID).append(str);
		
		var fn = fnName + "(" + type + ", " + (pageIndex - 1) + ")"; //组装执行的函数		
		var str = "上一页 ";//创建连接
		$('#' + showID).append(str);		
	}

	if (pagetotal == 1) {
		$('#' + showID).append("1 ");
	}
	// 如果当前页是5,前面一截就是1234,后面一截就是6789
	if (pagetotal > 1) {
		var tempBack = pagetotal;
		var tempFront = 1;
		if (back < pagetotal)
			tempBack = back;
		if (front > 1)
			tempFront = front;
		for (var i = tempFront; i <= tempBack; i++) {
			if (pageIndex == i) {
				var str = "  " + i + "     ";
				$('#' + showID).append(str);
			} else {
				var fn = fnName + "(" + type + ", " + i + ")"; //组装执行的函数
				var str = " <a href = 'javascript:" + fn + "'>[" + i + "]</a>";//创建连接
				$('#' + showID).append(str);
			}
		}
	}

	// 下一页, 尾页
	if (pageIndex == pagetotal) {
		$('#' + showID).append("  下一页 尾页 ");
	} else {
		var fn = fnName + "(" + type + ", " + (pageIndex + 1) + ")"; //组装执行的函数
		var str = " <a href = 'javascript:" + fn + "'>下一页</a> ";//创建连接
		$('#' + showID).append(str);		
		
		var fn = fnName + "(" + type + ", " + pagetotal + ")"; //组装执行的函数
		var str = "<a href = 'javascript:" + fn + "'> 尾页 </a> ";//创建连接
		$('#' + showID).append(str);		
	}
	
	// 红色字体显示当前页
	var str = "<font color = 'red'>" + pageIndex +"</font>";	
	$('#' + showID).append(str);
	
	// 斜线"/"
	$('#' + showID).append("/");
	
	// 蓝色字体显示总页数
	var str = "<font color = 'blue'>" + pagetotal +"</font>";	
	$('#' + showID).append(str);	
}


看了这段代码感觉怎么样啊!呵呵...
支持的别忘了顶下哦!
jQuery官网:http://docs.jquery.com/Main_Page

效果图:见附件!

1 楼 lym6520 2009-01-04  
这个还是有待改进的,,,
传入的执行函数的参数这种方式就不太好,,,
呵呵,, 要是有更好的意见和实现,,,请分享哦...
  相关解决方案