`
yeafee
  • 浏览: 4560 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

一段分页处理总结(JS数据加减) ------分享、学习

阅读更多
    本文实现了一个WEB程序分页功能,所有的页面转向,通过调用一个JS函数来实现.getServerList(p1,p2,p3,p4),其中传递四个参数,分别表示页面转向eg.previous,next,last;当前页;所有页;所有记录数;在处理分页的程序代码中,主要来处理参数p1.根据p1的不同,实现获取不同页面数据.
    
   
<script language="JavaScript" type="text/JavaScript">
function getServerList(dir,curpage,totalpage,totalrecordcount){
   var page;
  if(dir=="first"){ page=1;}
  if(dir=="last"){page=totalpage ;}
  if(dir=="previous"){
     if(curpage=="1"){
       page=1;
     }else{
     page=parseInt(curpage)-parseInt(1);
     }
  }
  if(dir=="next"){
     if(parseInt(curpage)<parseInt(totalpage)){
       page=parseInt(curpage)+parseInt(1);
     }else{
       page=totalpage;
     }
  }
  //alert(page);
  var action="liveserverlist.htm";
  document.location.href=action+"?page="+page;
}
</script>


getServerList(p1,p2,p3,p4),其中传递四个参数,分别表示页面转向eg.前一页,后一页;当前页;所有页;所有记录数;
在页面上四个页面转换方向都周用getServerList(p1,p2,p3,p4);p1值根据首页设置'first',下一页'next'等,p2,p3,p4值都相等.
取得分页所得数据的主要代码如下:
String page= request.getParameter("page");
		String to=request.getParameter("toPage");
			int serverCount= getSystemManager().getServercount();
			int pageCount= 0;
			if(serverCount<Constants.PAGENATION_RECORDS_COUNT){
				pageCount=someCount==0?0:1;
			}else{
				if(serverCount%Constants.PAGENATION_RECORDS_COUNT==0){
					pageCount=serverCount/Constants.PAGENATION_RECORDS_COUNT;
				}else{
					pageCount=serverCount/Constants.PAGENATION_RECORDS_COUNT+1;
				}
			}
			paramMap.put("totalRecordCount",serverCount);
			paramMap.put("totalPage",pageCount);
			paramMap.put("rcount",Constants.PAGENATION_RECORDS_COUNT);
			if(to!=null&&to.trim().length()>0){
				paramMap.put("toPage",to);
				paramMap.put("currentPage",Integer.parseInt(to));
			}
			if(page!=null){
				paramMap.put("toPage",page);
				paramMap.put("currentPage",Integer.parseInt(page));
			}
			if(to==null&&page==null){
				paramMap.put("toPage","1");
				paramMap.put("currentPage","1");
			}
			if(paramMap.get("toPage")==null){
				paramMap.put("toPage","1");
				paramMap.put("currentPage","1");
			}
		List serverList=getSystemManager().getLiveServerList(paramMap);

getLiveServerList(paramMap)这个参数Map中用到两个值toPage,rcount(每页显示记录数),
可以根据toPage的不同, Limit出不同段的数据.
select * from table_name LIMIT startrecord,pagecount


在Spring+iBATIS+MYSQL下实现:)
第一次在这里里同大家分享知识,希望一块学习。 匆忙的把功能算是实现了,还请大家指出改进的地方,谢谢。
  • 描述: 分页效果图
  • 大小: 3.7 KB
分享到:
评论

相关推荐

    angularjs使用directive实现分页组件的示例

    文章中的代码示例还展示了一段CSS样式,这些样式定义了分页组件的外观和布局。例如,定义了分页组件的外边距、列表项样式、输入框样式等,使得分页组件在页面中显示得更为美观和整洁。 最后,自定义指令的定义还...

    微信小程序源码

    开发者需要维护一个购物车数据模型,并处理用户的操作,如点击加减按钮、选择商品等,同时与服务器保持数据同步。 5. **个人中心(User Center)**: 个人中心通常包括用户信息、收货地址、订单历史、我的收藏等...

    单点登录源码

    用户权限=所拥有角色权限合集+用户加权限-用户减权限,优先级:用户减权限&gt;用户加权限&gt;角色权限 &gt; zheng-oss 文件存储系统,提供四种方案: - **阿里云** OSS - **腾讯云** COS - **七牛云** - 本地分布式存储 !...

    2021-2022计算机二级等级考试试题及答案No.18039.docx

    字符串和数值之间进行加减运算时,通常会导致错误。 - `A`、`B`为数值类型,`C`为字符串类型,因此`A + C`为合法表达式。 #### 9. JavaScript中的数学函数 - **知识点解析**:`Math.round()`是JavaScript中用来...

    图片轮播JS效果

    可以使用`addEventListener`来监听按钮的点击事件,然后根据当前显示的图片索引进行加减操作,并更新图片的激活状态: ```javascript const images = document.querySelectorAll('.slider-image'); let ...

    如何:在GridView中进行计算

    它允许开发者以表格形式展示数据,并提供了一系列内置功能,如排序、分页、筛选等。然而,有时候我们可能需要在GridView中执行一些自定义计算,例如求和、平均值或计算百分比。在给定的标题“如何:在GridView中进行...

    程序天下:JavaScript实例自学手册

    13.21 年份加减函数 13.22 精确到千分之一秒 13.23 离开某天的时间 13.24 判断两个字符串日期的大小 13.25 显示登录时间 13.26 中文日期样式(一) 13.27 中文日期样式(二) 13.28 状态栏动态显示时间 13.29 页面访问...

    《程序天下:JavaScript实例自学手册》光盘源码

    13.21 年份加减函数 13.22 精确到千分之一秒 13.23 离开某天的时间 13.24 判断两个字符串日期的大小 13.25 显示登录时间 13.26 中文日期样式(一) 13.27 中文日期样式(二) 13.28 状态栏动态显示时间 13.29 页面访问...

    2021-2022计算机二级等级考试试题及答案No.4607.docx

    5. 补码运算:计算机的ALU(算术逻辑单元)通常使用补码表示数值来进行加减运算,以处理负数。 6. Quit宏操作:在Access中,Quit宏操作用于退出整个Access应用程序。 7. Word人工分页符:人工分页符在Word中是一个...

    ThinkPHP3.0_完全开发手册(1).pdf

    模板引擎支持常用的算术运算符,例如加减乘除等。 **8.6 内置标签** ThinkPHP3.0 的模板引擎提供了一系列内置标签,例如循环标签 `{volist}`、条件标签 `{if}` 等。 **8.7 包含文件** 通过 `{include}` 标签可以...

    Tapestry5使用文档

    16. **加减号树 TreeView**:树形视图组件,支持节点的展开和折叠。 17. **循环组件 Loop**:重复渲染同一组数据。 18. **文本编辑器组件 KindEditor**:富文本编辑器组件。 19. **自动完成组件 Autocomplete**:...

    2021-2022计算机二级等级考试试题及答案No.1430.docx

    10. 数据操作中,日期型数据可以加减整数,对应C选项。这在处理日期计算时非常重要。 11. Access中,一个数据库可以包含多个表,对应A选项,这是数据库的基本结构。 12. 数字化图书馆是图书馆自动化发展的高级阶段...

    点击弹出图片相册代码.zip

    为了实现图片的前后切换,代码会监听左右箭头按钮的点击事件,根据当前显示的图片索引进行加减操作,更新大图内容。 此外,代码中的中文注释对于初学者来说尤其有价值,它们帮助理解每一步操作的目的和实现方式。...

    网站主页的图片轮播代码

    5. **事件处理**:如果需要添加手动切换功能,可以监听按钮的点击事件,根据当前显示的图片索引进行加减,然后更新对应的`li`元素的`active`类。 6. **响应式设计**:考虑到现代网页需要适应不同设备的屏幕尺寸,...

    超市购物系统.rar

    实现购物车的加减商品、全选、删除、修改数量等功能,同时要考虑库存检查,防止超卖。 9. **订单流程**: 用户下单后,系统需要生成订单,计算总价,然后跳转到支付页面。支付成功后,更新订单状态,发送通知给...

    小叶白龙许愿墙 v1.8版本

    5、后台可以封IP段和限制某一IP访问等功能。 6、后台增加管理员登陆记录日记。 7、后台显示管理员登陆次数和管理员级别(分为超级管理员和数据管理员) 8、数据库加入2个防下载表,防止恶意破坏。 9、前台屏蔽X轴使...

Global site tag (gtag.js) - Google Analytics