基于jqPaginator分页插件Boostrap分页样式TABLE表格操作

2024-01-24 02:08

本文主要是介绍基于jqPaginator分页插件Boostrap分页样式TABLE表格操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

首先需要头文件:引入jqPaginator-js文件、Boostrap样式-css文件。

//分页
<script src="http://www.jq22.com/demo/jqPaginator-master201703111100/js/jqPaginator.js"></script>
//样式
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/css/bootstrap.min.css">

将分页按钮放到合适的位置,插入到index.html中。

 <!-- 分页部分 --><ul class="pagination" id="pagination1"></ul><!-- 分页部分 -->

后台需要传进来一些参数,根据api接口提供的信息值,在前台传递。API图例:

1. 获取任务列表信息URL:/getTaskList?limit=8&page=1&state=0limit:每一页展示的数量(默认8条)page:当前展示第几页state:任务状态(0全部[默认] 1未完成 2已完成)METHOD:GET                                                                       RESULT:{code:0,  返回数据的状态码   0->正常  1->非正常(无匹配信息)msg:'',  数据状态的描述信息limit:8, 每页展示数量page:1,  当前页码pageNum:10,  总页数total:98,  总数据量list:[                                                    {id:1, 编号task:'xxx', 任务信息state:1, 任务状态  1未完成  2已完成time:'2019-06-15 04:39:00'  预完成时间complete:'2019-06-15 04:39:00' 真实完成时间},...]}

关于jqPaginator介绍参数使用说明

参数

参数默认值说明
totalPages0设置分页的总页数
totalCounts0设置分页的总条目数
pageSize0设置每一页的条目数
注意:要么设置totalPages,要么设置totalCounts + pageSize,否则报错;设置了totalCounts和pageSize后,会自动计算出totalPages。
currentPage1设置当前的页码
visiblePages7设置最多显示的页码数(例如有100也,当前第1页,则显示1 - 7页)
disableClass'disabled'设置首页,上一页,下一页,末页的"禁用状态"样式
activeClass'active'设置当前页码样式
first(无)设置"首页"的贬迟尘濒结构
prev(无)设置"上一页"的贬迟尘濒结构
next(无)设置"下一页"的贬迟尘濒结构
last(无)设置"末页"的贬迟尘濒结构
page(无)设置页码的贬迟尘濒结构,其中可以使用{{page}}代表当前页,{{totalPages}}代表总页数,{{totalCounts}}代表总条目数(例如:上面的"极简风格"的顿别尘辞,就是使用了调调占位符皑皑,并将惫颈蝉颈产濒别笔补驳别蝉设为1实现的。)
wrapper(无)分页结构的Html包裹,例如:<div class="your class"></div>,一般不会用到
onPageChange(无)回调函数,当换页时触发(包括初始化第一页的时候),会传入"目标页"的页码

       下一步就开始操作index.js文件,给ul#pagination1传入需要的页码值、分页数量等信息,根据项目需要设置对应的参数修改就可以了。

      首先要从后台数据提供的信息中,拿到总页数、每页的数量;请求成功之后给分页功能开始传新值渲染到前台HTML中,最后对按钮触发事件onPageChange增加一个函数。:其中num是页面点击对应的页码号(1、2、3……)。将点击的页码号再次传入接口,将新的数据渲染到页面的TABLE表格中展示即可。

//定义两个参数
var page=1;//当前页码
var limit=4;
//封装一个函数 来获取数据
function getList(){//通过JQ 封装ajax去获取新的数据$.ajax({url:'/getTaskList',//接口路径data:{//给后台传送的数据limit:limit,//数据条数page:page,},success:function(data){//该函数  会在请求成功之后执行 data是后台传过来的数据$.jqPaginator('#pagination1', {totalPages:data.pageNum,visiblePages: 4,currentPage: page,onPageChange: function (num) {$.ajax({url:'/getTaskList',//接口路径data:{//给后台传送的数据limit:limit,//数据条数page:num,},success:function(data){bindHTML(data);//获取到数据之后 再去把数据展示到页面}})}});}})
}

把请求到的数据展示到TABLE页面上;循环获取到的数据,拼接成对应的结构字符串;然后把这个结构字符串,插入到页面上自定义的表格内容,bindHTML(data)方法。

function bindHTML(data)
{var {}=data;//data是个后台传进来的对象var{code,list}=data;//data是后台传进来的对象console.log(code,list);if(code==1){//code==1代表请求失败alert('请求失败');return;//打断函数执行}var str='';//该字符串用来拼接需要的结构list.map(function(item,index){//使用map 循环 list 数组//item 数组中的项 index 代表对应的索引var {id,task,state,time,complete}=item;//str = str +str+=` <tr><td>${id}</td><td>${task}</td><td>${state==1?"未完成":"已完成"}</td><td>${time}</td><td><button type="button" class="btn btn-danger" data_id=${id}>删除</button>${state==1?'<button type="button" data_id='+id+' class="btn btn-success successBtn">完成</button>':''}</td></td></tr>`;})

最终效果图:

这篇关于基于jqPaginator分页插件Boostrap分页样式TABLE表格操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/638234

相关文章

Prompt - 将图片的表格转换成Markdown

Prompt - 将图片的表格转换成Markdown 0. 引言1. 提示词2. 原始版本 0. 引言 最近尝试将图片中的表格转换成Markdown格式,需要不断条件和优化提示词。记录一下调整好的提示词,以后在继续优化迭代。 1. 提示词 英文版本: You are an AI assistant tasked with extracting the content of

Maven(插件配置和生命周期的绑定)

1.这篇文章很好,介绍的maven插件的。 2.maven的source插件为例,可以把源代码打成包。 Goals Overview就可以查看该插件下面所有的目标。 这里我们要使用的是source:jar-no-fork。 3.查看source插件的example,然后配置到riil-collect.xml中。  <build>   <plugins>    <pl

动手学深度学习【数据操作+数据预处理】

import osos.makedirs(os.path.join('.', 'data'), exist_ok=True)data_file = os.path.join('.', 'data', 'house_tiny.csv')with open(data_file, 'w') as f:f.write('NumRooms,Alley,Price\n') # 列名f.write('NA

jenkins 插件执行shell命令时,提示“Command not found”处理方法

首先提示找不到“Command not found,可能我们第一反应是查看目标机器是否已支持该命令,不过如果相信能找到这里来的朋友估计遇到的跟我一样,其实目标机器是没有问题的通过一些远程工具执行shell命令是可以执行。奇怪的就是通过jenkinsSSH插件无法执行,经一番折腾各种搜索发现是jenkins没有加载/etc/profile导致。 【解决办法】: 需要在jenkins调用shell脚

Jenkins 插件 地址证书报错问题解决思路

问题提示摘要: SunCertPathBuilderException: unable to find valid certification path to requested target...... 网上很多的解决方式是更新站点的地址,我这里修改了一个日本的地址(清华镜像也好),其实发现是解决不了上述的报错问题的,其实,最终拉去插件的时候,会提示证书的问题,几经周折找到了其中一遍博文

线程的四种操作

所属专栏:Java学习        1. 线程的开启 start和run的区别: run:描述了线程要执行的任务,也可以称为线程的入口 start:调用系统函数,真正的在系统内核中创建线程(创建PCB,加入到链表中),此处的start会根据不同的系统,分别调用不同的api,创建好之后的线程,再单独去执行run(所以说,start的本质是调用系统api,系统的api

Java IO 操作——个人理解

之前一直Java的IO操作一知半解。今天看到一个便文章觉得很有道理( 原文章),记录一下。 首先,理解Java的IO操作到底操作的什么内容,过程又是怎么样子。          数据来源的操作: 来源有文件,网络数据。使用File类和Sockets等。这里操作的是数据本身,1,0结构。    File file = new File("path");   字

oracle分页和mysql分页

mysql 分页 --查前5 数据select * from table_name limit 0,5 select * from table_name limit 5 --limit关键字的用法:LIMIT [offset,] rows--offset指定要返回的第一行的偏移量,rows第二个指定返回行的最大数目。初始行的偏移量是0(不是1)。   oracle 分页 --查前1-9

MySQL——表操作

目录 一、创建表 二、查看表 2.1 查看表中某成员的数据 2.2 查看整个表中的表成员 2.3 查看创建表时的句柄 三、修改表 alter 3.1 重命名 rename 3.2 新增一列 add 3.3 更改列属性 modify 3.4 更改列名称 change 3.5 删除某列 上一篇博客介绍了库的操作,接下来来看一下表的相关操作。 一、创建表 create

封装MySQL操作时Where条件语句的组织

在对数据库进行封装的过程中,条件语句应该是相对难以处理的,毕竟条件语句太过于多样性。 条件语句大致分为以下几种: 1、单一条件,比如:where id = 1; 2、多个条件,相互间关系统一。比如:where id > 10 and age > 20 and score < 60; 3、多个条件,相互间关系不统一。比如:where (id > 10 OR age > 20) AND sco