javascript实现前端分页功能


Posted in Javascript onNovember 26, 2020

前言:今天给大家带来的是前端数据的分页功能,供大家参考,具体内容如下

先上一波效果图展示:

javascript实现前端分页功能

直接上代码:这里使用的是JavaScript来实现

关于代码详解都以注释的方式写在JavaScript里的

HTML:

<!DOCTYPE html>
<html>
 <head>
 <meta charset="utf-8">
 <title>分页</title>
 <link rel="stylesheet" href="css/limitFace.css" rel="external nofollow" >
 </head>
 <body>
 <div class="all">
  <table id="table">
  
  </table>
  <div id="inputs">
  
  </div>
 </div>
 <script src="js/limitFace.js"></script>
 </body>
</html>

CSS:

*{
 padding: 0;
 margin: 0;
 font-size: 20px;
}
.all{
 width: 100%;
 height: 100vh;
 display: flex;
 justify-content: center;
 flex-wrap: wrap;
}
/*偷懒才用的id*/
#inputs input{
 width: 100px;
 height: 50px;
 background-color: white;
}
#table{
 width: 90%;
}
tr{
 width: 100%;
}
td{
 text-align: center;
 width: 50%;
 height: 10vh;
 border: 1px solid black;
}

JS:

//一下数据为模拟集合,个人理解js中的集合就是将对象放进数组
var strs = [
 {
 "id":123,
 "pwd":456
 },
 {
 "id":456,
 "pwd":123
 },
 {
 "id":4681,
 "pwd":9815
 },
 {
 "id":471,
 "pwd":4981
 },
 {
 "id":1234789,
 "pwd":156
 },
 {
 "id":789,
 "pwd":158
 },
 {
 "id":"vgwh",
 "pwd":"vgsya"
 },
 {
 "id":1,
 "pwd":"tcv"
 },
 {
 "id":256,
 "pwd":"vtc0"
 }
];
//假设规定每页显示长度为3
var len = 3;
//确认该集合会被分成几页,分成几页就代表需要几个页面按钮,封装封装方便多次运用
function limits(){
 var countLim = Math.ceil(strs.length/len);//余数也算是一页,这里用向上取整
 //确认页面按钮个数,进行循环显示到页面上
 document.getElementById("inputs").innerHTML='';//清空一下
 for(var i=1;i<=countLim;i++){
 document.getElementById("inputs").innerHTML+='<input type="button" value="'+i+'" onclick="limitinput(this)"/>';//每个页面按钮都绑定上一个点击事件
 }
}
var choose = 0;//创建一个全局变量用来保存当前处于第几个页面
//点击按钮获取当前按钮的值进行选择当前table是第几页数据
function limitinput(ids){
 choose = ids.value;
 tablestr(choose);//刷新table数据
 limits();//刷新页面按钮
  ids.style.backgroundColor='red';//当前点击的页面按钮背景颜色改变为红色
 liminputcolor(choose);//页面按钮变色
}
//通过当前页面按钮和页面数据长度将数据放进table内,封装封装!!!必须封装
function tablestr(num){//num是指当前哪个页面
 var num1 = (num-1)*len;//确定循环开始的集合下标
 var num2 = num*len;//确定循环结束的结束下标
 document.getElementById("table").innerHTML='';//清空一下
 for(var i=num1;i<num2;i++){//遍历数组
 var str = '';
 for(var h in strs[i]){//遍历集合
  str+='<td>'+strs[i][h]+'</td>';
 }
 document.getElementById("table").innerHTML+='<tr>'+str+'</tr>';//每循环一次添加一条数据
 }
}
function liminputcolor(choose){
 document.getElementById("inputs").childNodes[choose-1].style.backgroundColor="red";
}
//初始化,当前页面显示为第一页
limits();//页面按钮生成
document.getElementById("inputs").childNodes[0].style.backgroundColor="red";//第一个按钮的背景颜色为红色
tablestr(1);//table数据显示
/*
到这里就结束了,但是!!!这些都是被封装好了的,意思就是说,在最开始的时候这就是通用的做法;
最开始的数据就是在模拟后端的集合,也就是说,不论你后端传递给前端什么集合都可以实现分页功能
*/

后言:本次博文就到这里了,多的话也没说啥,解释都在js的注释里面,要是有什么疑问的,可以私我,好了,该说再见了,制作不易,各位看客点个赞再走呗

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 获取图片颜色
Apr 05 Javascript
jQuery-Easyui 1.2 实现多层菜单效果的代码
Jan 13 Javascript
setTimeout()递归调用不加引号出错的解决方法
Sep 05 Javascript
jQuery插件scroll实现无缝滚动效果
Apr 27 Javascript
javascript实现别踩白块儿小游戏程序
Nov 22 Javascript
JS中Select下拉列表类(支持输入模糊查询)功能
Jan 17 Javascript
值得收藏的vuejs安装教程
Nov 21 Javascript
jQuery的ztree仿windows文件新建和拖拽功能的实现代码
Dec 05 jQuery
在Vue项目中使用snapshot测试的具体使用
Apr 16 Javascript
Flutter部件内部状态管理小结之实现Vue的v-model功能
Jun 11 Javascript
javascript中的this作用域详解
Jul 15 Javascript
如何在Vue中抽离接口配置文件
Oct 31 Javascript
关于angular 8.1使用过程中的一些记录
Nov 25 #Javascript
Vue组件生命周期运行原理解析
Nov 25 #Vue.js
vue element-ul实现展开和收起功能的实例代码
Nov 25 #Vue.js
在Vue中使用mockjs代码实例
Nov 25 #Vue.js
javascript实现左右缓动动画函数
Nov 25 #Javascript
JavaScript缓动动画函数的封装方法
Nov 25 #Javascript
js实现缓动动画
Nov 25 #Javascript
You might like
VFP与其他应用程序的集成
2006/10/09 PHP
php 删除cookie和浏览器重定向
2009/03/16 PHP
php设计模式 Visitor 访问者模式
2011/06/28 PHP
php+highchats生成动态统计图
2014/05/21 PHP
jQuery 选择器理解
2010/03/16 Javascript
七个很有意思的PHP函数
2014/05/12 Javascript
js获取form的方法
2015/05/06 Javascript
讲解JavaScript的Backbone.js框架的MVC结构设计理念
2016/02/14 Javascript
JavaScript的Backbone.js框架的一些使用建议整理
2016/02/14 Javascript
jQuery中animate的几种用法与注意事项
2016/12/12 Javascript
JavaScript表单验证完美代码
2017/03/02 Javascript
Vue.extend构造器的详解
2017/07/17 Javascript
把JavaScript代码改成ES6语法不完全指南(分享)
2017/09/10 Javascript
javascript性能优化之分时函数的介绍
2018/03/28 Javascript
JS遍历DOM文档树的方法实例详解
2018/04/03 Javascript
解决Nodejs全局安装模块后找不到命令的问题
2018/05/15 NodeJs
微信小程序自定义单项选择器样式
2019/07/25 Javascript
python直接访问私有属性的简单方法
2016/07/25 Python
深入浅析python 中的匿名函数
2018/05/21 Python
Python实现随机创建电话号码的方法示例
2018/12/07 Python
使用NumPy读取MNIST数据的实现代码示例
2019/11/20 Python
css3 仿写阿里云水纹效果的示例代码
2018/02/10 HTML / CSS
英国高街电视:High Street TV
2018/05/22 全球购物
英国领先的野生鸟类食品供应商:GardenBird
2018/08/09 全球购物
Linux操作面试题
2015/02/11 面试题
幼儿园门卫岗位职责
2014/02/14 职场文书
各营销点岗位职责范本
2014/03/05 职场文书
党的群众路线教育实践活动剖析材料
2014/09/30 职场文书
副总经理岗位职责范本
2014/09/30 职场文书
老龙头导游词
2015/02/11 职场文书
2015年学校后勤工作总结
2015/04/08 职场文书
2015秋季开学演讲稿范文
2015/07/16 职场文书
关于远足的感想
2015/08/10 职场文书
医护人员继续教育学习心得体会
2016/01/19 职场文书
Html5调用企业微信的实现
2021/04/16 HTML / CSS
React 并发功能体验(前端的并发模式)
2021/07/01 Javascript