本篇文章给大家介绍一下bootstrap table分页的实现两种方式。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。
bootstrap table分页的两种方式:
前端分页:一次性从数据库查询所有的数据,在前端进行分页(数据量小的时候或者逻辑处理不复杂的话可以使用前端分页)
服务器分页:每次只查询当前页面加载所需要的那几条数据
bootstrap 下载地址:http://www.bootcss.com/
bootstrap-table 下载地址:http://bootstrap-table.wenzhixin.net.cn/
jquery下载地址:http://www.jq22.com/jquery-info122
分页效果(请忽略样式)
一:准备js、css等文件
将下载的文档直接放入webapp目录下
页面引入需要的js、css
<!-- 引入的css文件 --> <link href="bootstrap/css/bootstrap.min.css" rel="stylesheet" /> <link href="bootstrap-table/dist/bootstrap-table.min.css" rel="stylesheet"> <!-- 引入的js文件 --> <script src="jquery/jquery.min.js"></script> <script src="bootstrap/js/bootstrap.min.js"></script> <script src="bootstrap-table/dist/bootstrap-table.min.js"></script> <script src="bootstrap-table/dist/locale/bootstrap-table-zh-CN.min.js"></script>
【相关推荐:《bootstrap教程》】
二:html页面标签内容
<div class="panel panel-default"> <div class="panel-heading"> 查询条件 </div> <div class="panel-body form-group" style="margin-bottom:0px;"> <label class="col-sm-1 control-label" style="text-align: right; margin-top:5px">姓名:</label> <div class="col-sm-2"> <input type="text" class="form-control" name="Name" id="search_name"/> </div> <label class="col-sm-1 control-label" style="text-align: right; margin-top:5px">手机号:</label> <div class="col-sm-2"> <input type="text" class="form-control" name="Name" id="search_tel"/> </div> <div class="col-sm-1 col-sm-offset-4"> <button class="btn btn-primary" id="search_btn">查询</button> </div> </div> </div> <table id="mytab" class="table table-hover"></table>
三:JS分页代码
$('#mytab').bootstrapTable({ method : 'get', url : "user/getUserListPage",//请求路径 striped : true, //是否显示行间隔色 pageNumber : 1, //初始化加载第一页 pagination : true,//是否分页 sidePagination : 'client',//server:服务器端分页|client:前端分页 pageSize : 4,//单页记录数 pageList : [ 5, 10, 20, 30 ],//可选择单页记录数 showRefresh : true,//刷新按钮 queryParams : function(params) {//上传服务器的参数 var temp = {//如果是在服务器端实现分页,limit、offset这两个参数是必须的 limit : params.limit, // 每页显示数量 offset : params.offset, // SQL语句起始索引 //page : (params.offset / params.limit) + 1, //当前页码 Name : $('#search_name').val(), Tel : $('#search_tel').val() }; return temp; }, columns : [ { title : '登录名', field : 'loginName', sortable : true }, { title : '姓名', field : 'name', sortable : true }, { title : '手机号', field : 'tel', }, { title : '性别', field : 'sex', formatter : formatSex,//对返回的数据进行处理再显示 }, { title : '操作', field : 'id', formatter : operation,//对资源进行操作 } ] }) //value代表该列的值,row代表当前对象 function formatSex(value, row, index) { return value == 1 ? "男" : "女"; //或者 return row.sex == 1 ? "男" : "女"; } //删除、编辑操作 function operation(value, row, index) { var htm = "<button>删除</button><button>修改</button>" return htm; } //查询按钮事件 $('#search_btn').click(function() { $('#mytab').bootstrapTable('refresh', { url : 'user/getUserListPage' }); })
四:bootstrap-table 实现前端分页
修改JS分页代码中某些属性
sidePagination:'client', queryParams : function (params) { var temp = { name:$('#search_name').val(), tel:$('#search_tel').val() }; return temp; },
定义user对象
package com.debo.common; public class User { private Integer id; private String loginName; private String name; private String tel; private Integer sex; //省略Get/Set函数 }
服务器Controller层代码
/** *直接一次性查出所有的数据,返回给前端,bootstrap-table自行分页 */ @RequestMapping("/getUserListPage") @ResponseBody public List<User> getUserListPage(User user,HttpServletRequest request){ List<User> list = userService.getUserListPage(user); return list; }
mabatis语句
<select id="getUserListPage" resultType="com.debo.common.User"> SELECT * FROM user WHERE 1 = 1 <if test="name!=null and name !=''"> AND name LIKE CONCAT('%',#{name},'%') </if> <if test="tel!=null and tel !=''"> AND tel = #{tel} </if> </select>
五:bootstrap-table 实现服务器端分页
设置JS分页代码中的某些属性
sidePagination:'server', queryParams : function (params) { var temp = { limit : params.limit, // 每页显示数量 offset : params.offset, // SQL语句起始索引 page: (params.offset / params.limit) + 1, //当前页码 Name:$('#search_name').val(), Tel:$('#search_tel').val() }; return temp; },
封装公共的page对象,并让user对象继承page对象
package com.debo.common; public class Page { //每页显示数量 private int limit; //页码 private int page; //sql语句起始索引 private int offset; public int getLimit() { return limit; } public void setLimit(int limit) { this.limit = limit; } public int getPage() { return page; } public void setPage(int page) { this.page = page; } public int getOffset() { return offset; } public void setOffset(int offset) { this.offset = offset; } }
package com.debo.common; public class User extends Page{ private Integer id; private String loginName; private String name; private String tel; private Integer sex; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getLoginName() { return loginName; } public void setLoginName(String loginName) { this.loginName = loginName; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getTel() { return tel; } public void setTel(String tel) { this.tel = tel; } public Integer getSex() { return sex; } public void setSex(Integer sex) { this.sex = sex; } }
封装返回数据实体类
package com.debo.common; import java.util.ArrayList; import java.util.List; public class PageHelper<T> { //实体类集合 private List<T> rows = new ArrayList<T>(); //数据总条数 private int total; public PageHelper() { super(); } public List<T> getRows() { return rows; } public void setRows(List<T> rows) { this.rows = rows; } public int getTotal() { return total; } public void setTotal(int total) { this.total = total; } }
服务器Controller层代码
@RequestMapping("/getUserListPage") @ResponseBody public PageHelper<User> getUserListPage(User user,HttpServletRequest request) { PageHelper<User> pageHelper = new PageHelper<User>(); // 统计总记录数 Integer total = userService.getTotal(user); pageHelper.setTotal(total); // 查询当前页实体对象 List<User> list = userService.getUserListPage(user); pageHelper.setRows(list); return pageHelper; }
mybatis语句
<select id="getTotal" resultType="int"> SELECT count(1) FROM user WHERE 1 = 1 <if test="name!=null and name !=''"> AND name LIKE CONCAT('%',#{name},'%') </if> <if test="tel!=null and tel !=''"> AND tel = #{tel} </if> </select> <select id="getUserListPage" resultType="com.debo.common.User"> SELECT * FROM user WHERE 1 = 1 <if test="name!=null and name !=''"> AND name LIKE CONCAT('%',#{name},'%') </if> <if test="tel!=null and tel !=''"> AND tel = #{tel} </if> LIMIT #{offset},#{limit} </select>
tip:增、删、改操作后重新加载表格
$("#mytab").bootstrapTable('refresh', {url : url});
更多编程相关知识,请访问:编程教学!!
Atas ialah kandungan terperinci 浅谈bootstrap table分页的实现两种方式. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Bootstrap lebih baik daripada Tailwindcss, Yayasan, dan Bulma kerana mudah digunakan dan cepat mengembangkan laman web responsif. 1.Bootstrap menyediakan perpustakaan yang kaya dengan gaya dan komponen yang telah ditetapkan. 2. Perpustakaan CSS dan JavaScript menyokong reka bentuk responsif dan fungsi interaktif. 3. Sesuai untuk pembangunan pesat, tetapi gaya tersuai mungkin lebih rumit.

Mengintegrasikan bootstrap dalam projek React boleh dilakukan dalam dua cara: 1) diperkenalkan menggunakan CDN, sesuai untuk projek kecil atau prototaip cepat; 2) Pemasangan menggunakan Pengurus Pakej NPM, sesuai untuk senario yang memerlukan penyesuaian yang mendalam. Dengan kaedah ini, anda dapat dengan cepat membina antara muka pengguna yang indah dan responsif dalam React.

Kelebihan mengintegrasikan bootstrap ke dalam projek bertindak balas termasuk: 1) perkembangan pesat, 2) konsistensi dan penyelenggaraan, dan 3) reka bentuk responsif. Dengan secara langsung memperkenalkan fail CSS atau menggunakan Perpustakaan React-Bootstrap, anda boleh menggunakan komponen dan gaya Bootstrap dengan cekap dalam projek React anda.

Bootstrap adalah rangka kerja yang dibangunkan oleh Twitter untuk membantu dengan cepat membina laman web dan aplikasi yang responsif, mudah alih. 1. Kemudahan penggunaan dan perpustakaan komponen yang kaya membuat pembangunan lebih cepat. 2. Komuniti yang besar menyediakan sokongan dan penyelesaian. 3. Memperkenalkan dan menggunakan nama kelas untuk mengawal gaya melalui CDN, seperti membuat grid responsif. 4. Gaya yang disesuaikan dan komponen lanjutan. 5. Kelebihan termasuk pembangunan pesat dan reka bentuk responsif, sementara kelemahan adalah konsistensi gaya dan keluk pembelajaran.

BootstrapisaFree, Open-SourcecssFrameworkTheatSimplifiesResponsiveandMobile-Firstwebsitedevelopment.itofferspre-styledcomponentsandagridsystem, streamliningthecreationofaestheticallypleasingandfunctionalwebdesigns.

Apa yang menjadikan reka bentuk web lebih mudah ialah bootstrap? Komponen pratetapnya, reka bentuk responsif dan sokongan komuniti yang kaya. 1) perpustakaan dan gaya komponen preset membolehkan pemaju untuk mengelakkan menulis kod CSS kompleks; 2) Sistem grid terbina dalam memudahkan penciptaan susun atur responsif; 3) Sokongan komuniti menyediakan sumber dan penyelesaian yang kaya.

Bootstrap mempercepatkan pembangunan web, dan dengan menyediakan gaya dan komponen yang telah ditetapkan, pemaju dapat dengan cepat membina laman web responsif. 1) Ia memendekkan masa pembangunan, seperti melengkapkan susun atur asas dalam masa beberapa hari dalam projek. 2) Melalui pembolehubah sass dan campuran, bootstrap membolehkan gaya tersuai memenuhi keperluan khusus. 3) Menggunakan versi CDN dapat mengoptimumkan prestasi dan meningkatkan kelajuan pemuatan.

Bootstrap adalah rangka kerja front-end sumber terbuka, dan fungsi utamanya adalah untuk membantu pemaju dengan cepat membina laman web responsif. 1) Ia menyediakan kelas CSS yang telah ditetapkan dan pemalam JavaScript untuk memudahkan pelaksanaan kesan UI yang kompleks. 2) Prinsip kerja bootstrap bergantung pada komponen CSS dan JavaScript untuk merealisasikan reka bentuk responsif melalui pertanyaan media. 3) Contoh penggunaan termasuk penggunaan asas, seperti membuat butang, dan penggunaan lanjutan, seperti gaya tersuai. 4) Kesilapan biasa termasuk salah ejaan nama kelas dan memperkenalkan fail dengan salah. Adalah disyorkan untuk menggunakan alat pemaju penyemak imbas untuk debug. 5) Pengoptimuman prestasi dapat dicapai melalui alat binaan tersuai, amalan terbaik termasuk yang telah ditetapkan dengan menggunakan HTML semantik dan bootstrap


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Versi Mac WebStorm
Alat pembangunan JavaScript yang berguna

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

DVWA
Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

Dreamweaver Mac版
Alat pembangunan web visual