JS 分页实现
var pagesize = 5;
var pageindex = 1;
var pagetype;
var parms;
var nextSize = 1;
var target;
function AjaxGetData(_pagesize, _pageindex, _type, _parms, _target) {
pagesize = _pagesize;
pageindex = _pageindex;
pagetype = _type;
parms = _parms;
target = _target;
$.ajax({
url: "/pro/casxIndex.ashx?PageType=" + pagetype + "&time=" + Date.parse(new Date()) + "",
type: "post",
data: "PageSize=" + pagesize + "&PageIndex=" + pageindex + parms,
dataType: "json",
success: function (data) {
var targetHtml = "";
var targetEle = "";
if (target) {
targetEle = $(target)
};
if (data.result == 1) {
var returnJson = $.parseJSON(data.returnval);
targetHtml += MatchCss(pagetype, returnJson);
}
if (targetHtml != "undefined") {
if (data.result == "2") {
targetEle.html(data.returnval);
}
else {
targetEle.html(targetHtml);
}
}
}
})
}
function MatchCss(pagetype, returnJson) {
switch (pagetype.toLocaleLowerCase()) {
case "caseindex":
return caseIndexList("", returnJson);
break
}
}
function caseIndexList(url, returnJson) {
var targetHtml = "";
targetHtml += " <ul class=\"wms-caseList\"> ";
for (var i = 0; i < returnJson.length; i++) {
targetHtml += "<li>";
targetHtml += "<div><a href=" + returnJson[i].rootlist + " title=\"\"><img src=" + returnJson[i].ImageURL + " alt=" + returnJson[i].Title + " width=\"280\" height=\"156\"></a></div>";
targetHtml += "<dl>";
targetHtml += "<dt>";
targetHtml += "<a href=" + returnJson[i].rootlist + ">" + returnJson[i].Title + "</a>";
targetHtml += "<span style=\"font-size:xx-small;float:right;\">" + returnJson[i].AddTime + "</span>"
targetHtml += "</dt>";
targetHtml += "<dd>" + returnJson[i].Remark + "</dd>";
targetHtml += "</dl>";
targetHtml += "</li>"
}
targetHtml += "</ul>";
targetHtml += caseIndexPager(returnJson);
return targetHtml
}
function caseIndexPager(returnJson) {
var targetHtml = "";
if (parseInt(returnJson[0].count) > pagesize) {
targetHtml += "<div class=\"page\" >";
targetHtml += "<span style='display:none;'>共有记录" + returnJson[0].count + ";共<span id='count'>" + (returnJson[0].count % pagesize == 0 ? parseInt(returnJson[0].count / pagesize) : parseInt(returnJson[0].count / pagesize + 1)) + "</span>页</span>";
targetHtml += "<span class=\"sp11\"><a href='javascript:void' onclick='GoToFirstPage()' id='aFirstPage' title='首页' >首页</a></span>\n";
targetHtml += "<span class=\"sp12\"><a href='javascript:void' onclick='GoToPrePage()' id='aPrePage' title='上一页'>上一页</a></span>\n";
if (pagesize < parseInt(returnJson[0].count)) {
targetHtml += "<span class='num_2'>\n";
for (var i = 1; i < 6; i++) {
if (((nextSize) * 5 - 5 + i) <= (parseInt(returnJson[0].count) % pagesize == 0 ? parseInt(returnJson[0].count / pagesize) : parseInt(returnJson[0].count / pagesize + 1))) {
if ((nextSize) * 5 - 5 + i == pageindex) {
targetHtml += "<a style='color:red;' title='正在查询" + (((nextSize) * 5 - 5 + i - 1) * pagesize + 1) + " to " + ((((nextSize) * 5 - 5 + i) * pagesize) > returnJson[0].count ? returnJson[0].count : (((nextSize) * 5 - 5 + i) * pagesize)) + " / " + returnJson[0].count + "' href='javascript:void' onclick='GoToChoosePage(this)' id='aChoosePage" + i + "' title=''>" + ((nextSize) * 5 - 5 + i) + " </a>"
} else {
targetHtml += "<a title='正在查询" + (((nextSize) * 5 - 5 + i - 1) * pagesize + 1) + " to " + ((((nextSize) * 5 - 5 + i) * pagesize) > returnJson[0].count ? returnJson[0].count : (((nextSize) * 5 - 5 + i) * pagesize)) + " / " + returnJson[0].count + "' href='javascript:void' onclick='GoToChoosePage(this)' id='aChoosePage" + i + "' title=''>" + ((nextSize) * 5 - 5 + i) + " </a>"
}
} else {
break
}
}
targetHtml += "</span>\n"
} else {
targetHtml += "<a style='color:red;' title='正在查询" + ((pageindex - 1) * pagesize + 1) + " to " + returnJson[0].count + " / " + returnJson[0].count + "' href='javascript:void' onclick='GoToChoosePage(this)' id='aChoosePage' title=''>" + pageindex + " </a>"
}
targetHtml += "<span class=\"sp13\"><a href='javascript:void' onclick='GoToNextPage()' id='aNextPage'title='下一页'>下一页</a></span>\n";
targetHtml += "<span class=\"sp14\"><a href='javascript:void' onclick='GoToEndPage()' id='aEndPage' title='末页' >末页</a></span>\n";
targetHtml += "</div>"
}
return targetHtml
}
function GoToFirstPage() {
pageindex = 1;
nextSize = parseInt(pageindex / 5 + 1);
AjaxGetData(pagesize, pageindex, pagetype, parms, target)
}
function GoToPrePage() {
if (pageindex > 1) {
pageindex -= 1;
nextSize = parseInt((pageindex - 1) / 5 + 1);
pageindex = pageindex > 0 ? pageindex : 1;
AjaxGetData(pagesize, pageindex, pagetype, parms, target)
}
}
function GoToNextPage() {
if (pageindex < parseInt($("#count").text())) {
pageindex += 1;
nextSize = parseInt((pageindex - 1) / 5 + 1)
}
AjaxGetData(pagesize, pageindex, pagetype, parms, target)
}
function GoToEndPage() {
pageindex = parseInt($("#count").text());
nextSize = parseInt((pageindex - 1) / 5 + 1);
AjaxGetData(pagesize, pageindex, pagetype, parms, target)
}
function GoToChoosePage(mm) {
pageindex = parseInt(mm.innerHTML);
nextSize = parseInt((pageindex - 1) / 5 + 1);
AjaxGetData(pagesize, pageindex, pagetype, parms, target)
}
Date.prototype.format = function (format) {
var o = {
"M+": this.getMonth() + 1,
"d+": this.getDate(),
"h+": this.getHours(),
"m+": this.getMinutes(),
"s+": this.getSeconds(),
"q+": Math.floor((this.getMonth() + 3) / 3),
"S": this.getMilliseconds()
}
if (/(y+)/.test(format)) format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
for (var k in o) if (new RegExp("(" + k + ")").test(format)) format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length));
return format
}
JS 分页实现的更多相关文章
- js分页小结
今天解决了JS分页的问题1 页码 给每页的内容套一个相同的类名 通过选择器加上.length或者.size() 来获得总页数2当前页的页码可以使用each(function(index,DOMsss ...
- 自己封装的JS分页功能[用于搭配后台使用]
* 2016.7.03 修复bug,优化代码逻辑 * 2016.5.25 修复如果找不到目标对象的错误抛出. * 2016.5.11 修复当实际页数(pageNumber)小于生成的页码间隔数时的bu ...
- jsp、js分页功能的简单总结
一.概述 首先,我们要明确为何需要分页技术,主要原因有以下: 1.分页可以提高客户体验度,适当地选择合适的数据条数,让页面显得更有条理,使得用户体验感良好,避免过多数据的冗余. 2.提高性能的需要.分 ...
- 一个重构的js分页类
// JavaScript Document /**//** * js分页类 * @param iAbsolute 每页显示记录数 * @param sTableId 分页表格属性ID值,为Strin ...
- 面向对象版js分页
基于前一个js分页,我将代码改成一个面向对象版的js分页,代码如下 http://peng666.github.io/blogs/pageobj <!DOCTYPE html> <h ...
- 纯js分页代码(简洁实用)
纯js写的分页代码. 复制代码代码如下: //每页显示字数 PageSize=5000; //分页模式 flag=2;//1:根据字数自动分页 2:根据[NextPage]分页 //默认页 start ...
- JS分页 + 获取MVC地址栏URL路径的最后参数
@{ Layout = null; } <!DOCTYPE html> <html> <head> <meta name="viewport&quo ...
- 浅谈js分页的几种方法
一个项目中必然会遇到分页这种需求的,分页可以使数据加载更合理,也让页面显示更美观,更有层次感!那么js分页到底如何实现呢?下面我就来讲一下三种循序渐进的方法 1.自己纯手写分页 更深入的去理解分页的意 ...
- JS分页条插件
目标 制作js分页导航jq插件,用于无刷新分页或者刷新分页 实现目标参考京东和天猫的分页条. 有四个固定按钮,前页码,后页码,首页,末页. 程序关键点在于计算中间页面的起止位置.逻辑是以当前页码为参照 ...
- js分页实例
js分页实例 案例1 1.js_pageusers.html <!DOCTYPE html> <html> <head> <title>js_pageu ...
随机推荐
- 关于javaScript事件委托的那些事
今天是第一次写稿,还是有那么一丢丢小鸡冻...回归正题啦... 关于javaScript事件委托不得不说的那些事,为什么要使用事件委托? 我们可以这么说,假设老板要分配一项任务,首先要秘书叫A君来到办 ...
- 韩顺平循序渐进学JAVA从入门到精通 视频全套,需要的联系我
0讲-开山篇.avi 10讲-访问修饰符.重载.覆盖.avi 11讲-约瑟夫问题.avi 12讲-多态.avi 13讲-抽象类.接口.avi 14讲-final.作业评讲.avi 15讲-作业.测试题 ...
- win7中配置eclipse连接Ubuntu内的hadoop
Hadoop java 分布式 云计算 数据库 目录[-] 1.设置Ubuntu静态IP: 1)配置网卡参数到interfaces文件: 2)重启网卡: 2.配置Ubuntu的hosts: 3.配置V ...
- p1640&bzoj1854 连续攻击游戏(游戏)
传送门(洛谷) 传送门(bzoj) 题目 lxhgww最近迷上了一款游戏,在游戏里,他拥有很多的装备,每种装备都有2个属性,这些属性的值用[1,10000]之间的数表示.当他使用某种装备时,他只能使用 ...
- iperf3
1.安装 将下载得到的“iperf-3.1.3-win64.zip”文件解压缩,得到“iperf3.exe”和“cygwin1.dll”两个文件.将这两个文件复制到“%systemroot%”(大多数 ...
- ASP.NET十分有用的页面间传值方法(转)
一.目前在ASP.NET中页面传值共有这么几种方式: 1.表单提交, <form action= "target.aspx" method = "post&qu ...
- sqlserver2012——游标
游标:一种数据访问机制,允许用户访问单独的数据行而不是对整个行集进行操作.用户可以通过单独处理每一行逐条收集信息并对数据逐行进行操作,这样可以将降低系统开销. 游标主要有以下两部分: 游标结果集:由定 ...
- C++基础之类和对象二
(1)指向类的成员的指针分为指向数据成员的指针和指向成员函数的指针两种.一个类的对象用运算符“.*”来操作指向该类成员的指针,而一个指向类的对象的指针用运算符“->”来操作指向该类成员的指针.( ...
- 【转】C#里partial关键字的作用
源地址:http://www.cnblogs.com/OpenCoder/archive/2009/10/27/1590328.html
- 老男孩Day1作业(一):编写登录接口
需求:编写登陆接口1. 用户输入帐号密码进行登陆2. 用户信息保存在文件内3. 用户密码输入错误三次后锁定用户 1)编写思路 编写思路参考下面GitHub链接中的流程图 https://github. ...