JQuery页面的表格数据的增加与分页的实现


Posted in Javascript onDecember 10, 2013
var countPage; 
var nowPag = 1; 
var pageSize; 
var countSize; var starIndex; 
var endIndex; 
// 用户提交信息 
var name; 
var sex; 
var age; 
// 定义行号 
var num = 1; 
$(document).ready(function() { 
// 注册添加用户的事件 
$("#submit").click(function() { 
// 获取用户提交的信息 
name = $("#name").val(); 
sex = $("input[name='sex']:checked").val(); 
age = $("#age").val(); 
pageSize = $("#selectSize option:selected").val(); 
// alert(name+sex+age+pageSize); 
// 创建表格下的tr对象 
$tr = $("<tr class='data' ></tr>"); 
$td1 = $("<td></td>"); 
$td2 = $("<td></td>"); 
$td3 = $("<td></td>"); 
$td4 = $("<td></td>"); 
$td5 = $("<td></td>"); 
$tr.append($td1.append("<input type='checkbox'>")); 
$tr.append($td2.append(name)); 
$tr.append($td3.append(sex)); 
$tr.append($td4.append(age)); 
$tr.append($td5.append("<input type='button' value='删除'>")); 
$("#show").append($tr); 
pageNation(); 
}); 
// 注册选择显示条数的操作 
$("#selectSize").change(function() { 
pageSize = $("#selectSize option:selected").val(); 
pageNation(); 
}); 
// 注册分页操作的按钮点击事件 
$("#first").click(pageNation); 
$("#back").click(pageNation); 
$("#next").click(pageNation); 
$("#last").click(pageNation); 
}); 
// 分页操作的函数 
var pageNation = function() { 
// 获取所有的数据条数 
countSize = $("#show tr").size(); 
// 获取总页数 
countPage = Math.ceil(countSize / pageSize); 
// 处理翻页的操作 
if (this.nodeType == 1) { 
var idValue = $(this).attr("id"); 
if ("first" == idValue) { 
// alert(idValue); 
nowPag = 1; 
} else if ("back" == idValue) { 
// alert(nowPag); 
if (nowPag > 1) { 
nowPag--; 
} 
} else if ("next" == idValue) { 
// alert(idValue); 
if (nowPag < countPage) { 
nowPag++; 
} 
} else if ("last" == idValue) { 
// alert(idValue); 
nowPag = countPage; 
} 
} 
// alert(pageSize); 
// 获取显示开始和结束的下标 
starIndex = (nowPag - 1) * pageSize + 1; 
endIndex = nowPag * pageSize; 
if (endIndex > countSize) { 
// alert("下标大于总记录数"+endIndex); 
endIndex = countSize; 
} 
if (countSize < pageSize) { 
// alert("总记录数小小于每页的显示条数"+endIndex); 
endIndex = countSize; 
} 
// alert(starIndex); 
if (starIndex == endIndex) { 
// 显示的操作 
$("#show tr:eq(" + (starIndex - 1) + ")").show(); 
$("#show tr:lt(" + (starIndex - 1) + ")").hide(); 
} else { 
// 显示的操作 
$("#show tr:gt(" + (starIndex - 1) + ")").show(); 
$("#show tr:lt(" + (endIndex - 1) + ")").show(); 
// 隐藏的操作 
$("#show tr:lt(" + (starIndex - 1) + ")").hide(); 
$("#show tr:gt(" + (endIndex - 1) + ")").hide(); 
} 
// 改变底部显示操作 
$("#sizeInfo") 
.html( 
"当前从" + starIndex + "条到第" + endIndex + "条记录,共" + countSize 
+ "条记录."); 
$("#pageInfo").html("当前是第" + nowPag + "页,共" + countPage + "页."); 
}; 

[html] view plaincopy在CODE上查看代码片派生到我的代码片 
<!DOCTYPE html> 
<html> 
<head> 
<title>用jquery实现</title> 
<meta name="keywords" content="keyword1,keyword2,keyword3"> 
<meta name="description" content="this is my page"> 
<meta name="content-type" content="text/html; charset=UTF-8"> 
<script type="text/javascript" src="../js/jquery-2.0.3.min.js"></script> 
<!--<link rel="stylesheet" type="text/css" href="./styles.css">--> 
<style type="text/css"> 
div { 
border: 1px black solid; 
} 
#tableDiv { 
height: 500px; 
} 
#insertDiv { 
width: 300px; 
margin-right: 550px; 
} 
#tableDiv { 
width: 500px; 
margin-left: 350px; 
} 
#top { 
width: 500px; 
height: 400px; 
} 
#topTable,#contentTable,#bottomTable { 
width: 450px; 
} 
</style> 

<script type="text/javascript" src="../js/jqueryTablePageNation.js"></script> 
</head> 
<body> 
<div id="content" align="center"> 
<form action=""> 
<div id="insertDiv" style="width: 263px; "> 
<table id="insertData" border="1px"> 
<tr> 
<td>姓名<input type="text" id="name" value="donghogyu"></td> 
</tr> 
<tr> 
<td>性别<input type="radio" name="sex" value="男" 
checked="checked">男<input type="radio" name="sex" 
value="女">女 
</td> 
</tr> 
<tr> 
<td>年龄<input type="text" id="age" value="21"></td> 
</tr> 
<tr> 
<td align="center"><input type="button" id="submit" 
value="添加数据"></td> 
</tr> 
</table> 
</div> 
<div id="tableDiv"> 
<div id="top"> 
<table id="topTable" border="1px"> 
<thead> 
<th><input type="checkbox">全选</th> 
<th>姓名</th> 
<th>性别</th> 
<th>密码</th> 
<th>操作</th> 
</thead> 
<tbody id="show"> 
</tbody> 
</table> 
</div> 
<div id="bottom"> 
<table id="bottomTable" border="1px"> 
<tr align="center"> 
<td><input type="button" value="首页" id="first"></td> 
<td><input type="button" value="上一页" id="back"></td> 
<td><input type="button" value="下一页" id="next"></td> 
<td><input type="button" value="末页" id="last"></td> 
<td><select id="selectSize"> 
<option value="3">3</option> 
<option value="5">5</option> 
<option value="10">10</option> 
</select>条</td> 
</tr> 
<tr align="center"> 
<td colspan="6"><span id="sizeInfo">当前从0条到第0条记录.</span></td> 
</tr> 
<tr align="center"> 
<td colspan="6"><span id="pageInfo">当前是第0页,共0页.</span></td> 
</tr> 
</table> 
</div> 
</div> 

</form> 
</div> 
</body> 
</html>
Javascript 相关文章推荐
javascript 变量作用域 代码分析
Jun 26 Javascript
js arguments对象应用介绍
Nov 28 Javascript
控制台报错object is not a function的解决方法
Aug 24 Javascript
在JavaScript里防止事件函数高频触发和高频调用的方法
Sep 06 Javascript
jQuery+ajax实现动态执行脚本的方法
Jan 27 Javascript
jquery捕捉回车键及获取checkbox值与异步请求的方法
Dec 24 Javascript
js格式化输入框内金额、银行卡号
Feb 01 Javascript
Angular ng-repeat遍历渲染完页面后执行其他操作详细介绍
Dec 13 Javascript
Node.js中使用mongoose操作mongodb数据库的方法
Sep 12 Javascript
angularjs利用directive实现移动端自定义软键盘的示例
Sep 20 Javascript
vue+socket.io+express+mongodb 实现简易多房间在线群聊示例
Oct 21 Javascript
微信小程序第三方框架对比 之 wepy / mpvue / taro
Apr 10 Javascript
jquery动态加载select下拉框示例代码
Dec 10 #Javascript
关于jquery中全局函数each使用介绍
Dec 10 #Javascript
jquery对ajax的支持介绍
Dec 10 #Javascript
jquerydom对象的事件隐藏显示和对象数组示例
Dec 10 #Javascript
鼠标选择动态改变网页背景颜色的JS代码
Dec 10 #Javascript
深入理解JavaScript高级之词法作用域和作用域链
Dec 10 #Javascript
javascript四舍五入函数代码分享(保留后几位)
Dec 10 #Javascript
You might like
php环境配置 php5 MySQL5 apache2 phpmyadmin安装与配置图文教程
2007/03/16 PHP
mac下使用brew配置环境的步骤分享
2011/05/23 PHP
PHP图片上传代码
2013/11/04 PHP
php去除HTML标签实例
2013/11/06 PHP
PHP文件操作方法汇总
2015/07/01 PHP
为什么要在引入的css或者js文件后面加参数的详细讲解
2013/05/03 Javascript
picLazyLoad 实现图片延时加载(包含背景图片)
2016/07/21 Javascript
在 Angular 中实现搜索关键字高亮示例
2017/03/21 Javascript
JS实现动态给标签控件添加事件的方法示例
2017/05/13 Javascript
ReactNative踩坑之配置调试端口的解决方法
2017/07/28 Javascript
JavaScript实现随机数生成器(去重)
2017/10/13 Javascript
vuex actions传递多参数的处理方法
2018/09/18 Javascript
详解无限滚动插件vue-infinite-scroll源码解析
2019/05/12 Javascript
Vue computed 计算属性代码实例
2020/04/22 Javascript
微信小程序文章列表功能完整实例
2020/06/03 Javascript
python简单的函数定义和用法实例
2015/05/07 Python
Python基础教程之正则表达式基本语法以及re模块
2016/03/25 Python
用Python设计一个经典小游戏
2017/05/15 Python
Python实现字符串反转的常用方法分析【4种方法】
2017/09/30 Python
Django项目基础配置和基本使用过程解析
2019/11/25 Python
Python操作Sonqube API获取检测结果并打印过程解析
2019/11/27 Python
Python 实现网课实时监控自动签到、打卡功能
2020/03/12 Python
Python面向对象程序设计之继承、多态原理与用法详解
2020/03/23 Python
Python操作Excel把数据分给sheet
2020/05/20 Python
Python爬取你好李焕英豆瓣短评生成词云的示例代码
2021/02/24 Python
Under Armour美国官网:美国知名高端功能性运动品牌
2016/09/05 全球购物
高一政治教学反思
2014/01/28 职场文书
企业百日安全活动总结
2015/05/07 职场文书
2015年高三毕业班班主任工作总结
2015/10/22 职场文书
《怀念母亲》教学反思
2016/02/19 职场文书
Python中os模块的简单使用及重命名操作
2021/04/17 Python
vue.js Router中嵌套路由的实用示例
2021/06/27 Vue.js
Golang并发操作中常见的读写锁详析
2021/08/30 Golang
「女孩的钓鱼慢活」全新版权绘公布
2022/03/21 日漫
AngularJS实现多级下拉框
2022/03/25 Javascript
单机多实例部署 MySQL8.0.20
2022/05/15 MySQL