Atitit.列表页面and条件查询的实现最佳实践(2)------翻页 分页 控件的实现java .net php
)------翻页 分页 控件的实现java .net php
1. 关于翻页有关的几大控件::搜索框控件,显示表格控件,翻页器,数据源控件..
1
2.1. 通常ui--“首页”、“上页”、“下页”、“末页”,还要有Goto到指定页 1
2.2. 百度式::...<上一页567891011121314下一页 2
2.3. 综合的页面 首页”、“上页”、56789 “下页”、“末页”,还要有Goto到指定页 2
9. 容器注射DI,IOC绑定搜索控件and翻页控件and数据源and表格控件.
3
10. 数据源计算总记录的方法:::子能sql count()... 3
1. 关于翻页有关的几大控件::搜索框控件,显示表格控件,翻页器,数据源控件..
2. 翻页的显示格式::
2.1. 通常ui--“首页”、“上页”、“下页”、“末页”,还要有Goto到指定页
“首页”、“上页”、“下页”、“末页”,还要有Goto到指定页等等
当前页/总页数 总条数 指定pagesize选择器
2.2. 百度式::...<上一页567891011121314下一页
2.3. 综合的页面 首页”、“上页”、56789 “下页”、“末页”,还要有Goto到指定页
2.4.
优缺点::
3. 翻页器与数据源控件的交流数据..
翻页器 pre ,next页面事件,,,会传出数据:::: pagesize,page...
数据源会返回数据:: rows(记录总数) , datalist..(当前页的数据)
4. 分页/翻页的流程详细
4.1. :搜索框搜索按钮事件:
获得搜索框参数>>传给翻页器>>指定翻页器当前页面为1>>> 翻页器执行查询>>数据源>》》获得显示数据绑定显示在表格控件中...>>按照返回的记录计算翻页器的总页数...>>翻页器设置嘎自的 首页”、“上页”为禁用状态..
或者
搜索框控件获得参数>>直接执行查询pagesize,page=1>>数据源>》》获得显示数据绑定显示在表格控件中...>>按照返回的记录计算翻页器的总页数.>>>指定翻页器当前页面为1>>翻页器设置嘎自的 首页”、“上页”为禁用状态..
4.2. 翻页事件:
翻页器计算(+-或者goto 第一的页or最后的页面) 要使用的页数>>执行从 搜索框控件获得参数>>参数传给数据源控件>>>返回翻页数据..>>绑定显示在表格控件中..>>>按照返回的记录计算翻页器的总页数>>>>翻页器设置嘎自的 首页”、“上页”“下页”、“末页”为禁用状态..
4.3. Jump事件...
5. 运行在服务端还是客户端控件??
从兼容性考虑, 翻页控件还是运行在客户端更好...java .net php都能使用....
6. 数据源内部获得翻页数据运行在服务端还是客户端??
从开发效率想, 少量数据可以在客户端数据源内部获得...
7. 翻页控件选型::easyui
客户端easyui 推荐,,,...Ligerui的根本马独立的翻页控件
服务端:: 倒霉,几乎马知名的分页控件,只好嘎自写兰..
aspnetpager
8. 翻页控件的扩展点and 调用点
扩展点:::一个接口,用来调用外部控件...
var onSelectPage= function(pageNumber, pageSize){
//$('#content').panel('refresh', 'show_content.php?page='+pageNumber);
query();
}
调用点:::外部控件可以调用的翻页控件方法..
resetPageTo1()
9. 容器注射DI,IOC绑定搜索控件and翻页控件and数据源and表格控件.
10. 数据源计算总记录的方法:::子能sql count()...
或者使用server 翻页而不是数据库翻页..
11. #---code
Line 3: var onSelectPage= function(pageNumber, pageSize){
Line 10: //function pageIni(info)
Line 27: function setPageInfo(info)
Line 53: function resetPageTo1()
Line 59: function setBtnDisabled()
Line 78: function nextPage()
Line 85: function firstPage()
Line 93: function lastPage()
Line 102: function prePage()
Line 114: function setNextPageInfoNPaging(nextPage)
Line 121: function page_go()
#------------------detail
// JavaScript Document
//todox ini pageInfoStyle pagesize and bind SelectPageevent===query..
var onSelectPage= function(pageNumber, pageSize){
//$('#content').panel('refresh', 'show_content.php?page='+pageNumber);
query();
}
//=========================================
//function pageIni(info)
//{
////{
//// total:2000,
//// pageSize:10
//// }
//var total=info.total;
//var pageSize=info.pageSize;
//$("#totalPages").html(total/pageSize);
//$("#totalRows").html(total);
////if(info.pageNumber==null)
////if($("#page").val()=="")
////$("#page").val(1);
//}
// setPageInfo({"total":data.total,"pageSize":7});
var pageCtrlId="page_page";
function setPageInfo(info)
{
//{pageSize
// total:2000,
//
// }
var total=info.total;
var pageSize=$("#pagesize").val();
$("#totalPages").html(Math.ceil(total/pageSize));
//fix page err
try{
);
);
if(curPage>totalPageShow)
{
//setNextPageInfoNPaging(1);
}
}catch(e){}
$("#totalRows").html(total);
//if(info.pageNumber==null)
setBtnDisabled()
}
function resetPageTo1()
{
);
);
}
function setBtnDisabled()
{
);
$("#nextLastPageBtnArea").show();
$("#firstPrePageBtnArea").show();
)
{
$("#firstPageBtn").attr("disabled",true);
$("#prePageBtn").attr("disabled",true);
$("#firstPageBtn,#prePageBtn").addClass('disable');
$("#firstPrePageBtnArea").hide();
}
if(curPage==$("#totalPages").text())
{
$("#nextLastPageBtnArea").hide();
//$("#firstPrePageBtnArea").hide();
}
}
function nextPage()
{
);
;
setNextPageInfoNPaging(nextPage);
setBtnDisabled()
}
function firstPage()
{
);
;
setNextPageInfoNPaging(nextPage);
setBtnDisabled()
}
function lastPage()
{
);
var nextPage=$("#totalPages").text();
setNextPageInfoNPaging(nextPage);
setBtnDisabled()
}
function prePage()
{
);
;
setNextPageInfoNPaging(nextPage);
setBtnDisabled()
}
function setNextPageInfoNPaging(nextPage)
{
$("#"+pageCtrlId).val(nextPage);
$("#page_page_lab").html(nextPage);
var pagesize=$("#pagesize").val();
onSelectPage(nextPage,pagesize);
}
function page_go()
{
var goPage;
try{
);
}catch(e)
{alert(e);return;
}
//var curPage= parseInt( $("#"+pageCtrlId).val(),10);
if(goPage=="")
{alert("页码不对");return;
}
)
{
alert("页码不对");return;
}
);
if(goPage>total)
{alert("页码不对_overpage");return;}
setNextPageInfoNPaging(goPage);
setBtnDisabled();
}
12. 参考
JAVA实现关系数据库的翻页 - Briver Song的专栏 - 博客频道 - CSDN.NET
ASP.NET 自定义控件 翻页功能 - ミ微笑的借口.的日志 - 网易博客
解决Asp.net中翻页问题的自定义用户控件 - RedSoft - 博客园
Atitit.列表页面and条件查询的实现最佳实践(2)------翻页 分页 控件的实现java .net php的更多相关文章
- Atitit.列表页面and条件查询的实现最佳实践(1)------设置查询条件and提交查询and返回json数据
Atitit.列表页面and条件查询的实现最佳实践(1)------设置查询条件and提交查询and返回json数据 1. 1. 配置条件字段@Conditional 1 1 2. 2. 配置条件字段 ...
- 【JAVAWEB学习笔记】21_多条件查询、attr和prop的区别和分页的实现
今天主要学习了数据库的多条件查询.attr和prop的区别和分页的实现 一.实现多条件查询 public List<Product> findProductListByCondition( ...
- Atitit 翻页功能的解决方案与版本历史 v4 r49
Atitit 翻页功能的解决方案与版本历史 v4 r49 1. 版本历史与分支版本,项目版本记录1 1.1. 主干版本历史1 1.2. 分支版本 项目版本记录.1 2. Easyui 的翻页组件2 ...
- Atitit 数据库view视图使用推荐规范与最佳实践与方法
Atitit 数据库view视图使用推荐规范与最佳实践与方法 1. 视图的优点:1 1.1. **提升可读性 定制用户数据,聚焦特定的数据1 1.2. 使用视图,可以简化数据操作. 1 ...
- PagedDataSource数据绑定控件和AspNetPager分页控件结合使用列表分页
1.引用AspNetPager.dll. 2.放置Repeater数据绑定控件. <asp:Repeater ID="Repeater1" runat="serve ...
- atitit. 日志系统的原则and设计and最佳实践(1)-----原理理论总结.
atitit. 日志系统的原则and设计and最佳实践总结. 1. 日志系统是一种不可或缺的单元测试,跟踪调试工具 1 2. 日志系统框架通常应当包括如下基本特性 1 1. 所输出的日志拥有自己的分类 ...
- atitit.人脸识别的应用场景and使用最佳实践 java .net php
atitit.人脸识别的应用场景and使用最佳实践 java .net php 1. 人脸识别的应用场景 1 2. 框架选型 JNI2OpenCV.dll and JavaCV 1 3. Url ap ...
- sharepoint 2010 列表数据分页控件介绍 pagination UserControl
转:http://blog.csdn.net/chenxinxian/article/details/8714391 这里主要是介绍下最近开发的一个sharepoint列表或者文档库的分页控件,并且把 ...
- MVC无刷新查询,PagedList分页控件使用,导出Excel
使用MVC开发也有一段时间了,总结下无刷新部分视图的使用.PagedList分页控件的使用. @using PagedList @model StaticPagedList<T> < ...
随机推荐
- 安装crab
1. crab 介绍: Recommender systems in Python 官网介绍:http://muricoca.github.io/crab/ 在安装过程中,发现一个问题,我已经安装了A ...
- Kindeditor为什么提交后获取不到值
LinkButton不是表单提交方式所以获取不到.如果用button submit提交方式就是form提交方式后台就能获取到值 取得编辑器的HTML内容.KindEditor的可视化操作在新创建的if ...
- Search and Replace
function myReplace(str, before, after) { //return str; if(before[0] === before[0].toUpperCase()){ af ...
- H5-考试判断题
1.所有的元素设置了浮动后都可以设置宽高. 2.行元素都不能设置宽高跟上下边距 3.所有的css样式优先级中“!important”优先级最高(及其不推荐使用) 4.改变元素的transition值, ...
- 揭开HTTP网络协议神秘面纱系列(一)
1.了解Web及网络基础 TCP/IP协议族按层次可以分为下面四层: 应用层:决定了向用户提供应用服务时通信的活动,TCP/IP协议族内预存了各类通用的应用服务,比如:FTP(文件传输协议)和DNS( ...
- 問題排查:F5啟動偵錯後所提示的錯誤 (1)
原始專案版本:Visual Studio 2005 開發環境:Visual Studio 2013 偵錯運行環境:IIS Express 啟動偵錯後,錯誤提示內容如下: HTTP 错误 500.23 ...
- React Developer Tools 安装小提示
1,在google市场里边,安装React Developer Tools之后,发现是开启的,但是按下F12后,并没有发现react选项 2,后来通过查资料,发现必须是运行react项目的时候,才出现 ...
- Daily Scrum 12.4
今日完成任务: 对数据库完成了整理,以下是整理的内容: # 表 改动 原因 1 Answer 保留credit列,作为投票数 建议改名为vote,同意? 2 Answer qid.uid设置为外码 ...
- Android打包签名
Ⅰ.用jdk和sdk自带工具打包签名 a.把jdk下的keytool.exe和jarsigner.exe所在目录(两个工具在同一目录) 添加到环境变量path 1)新建环境变量package,pack ...
- Unity5 如何做资源管理和增量更新
工具 Unity 中的资源来源有三个途径:一个是Unity自动打包资源,一个是Resources,一个是AssetBundle. Unity自动打包资源是指在Unity场景中直接使用到的资源会随着场景 ...