bootstrap Table服务端处理分页(后台是.net)


Posted in Javascript onOctober 19, 2017

本文实例为大家分享了bootstrap Table服务端处理分页的具体代码,供大家参考,具体内容如下

要考虑函数可被可重复使用(调用),需要将可变化的变为参数封装起来

function HQCreatTables(ob) {
 var option = {
 method: 'get',
 dataType: "json",
 striped: true,//设置为 true 会有隔行变色效果 
 undefinedText: "空",//当数据为 undefined 时显示的字符 
 pagination: true, //分页 
 // paginationLoop:true,//设置为 true 启用分页条无限循环的功能。 
 showToggle: false,//是否显示 切换试图(table/card)按钮 
 showColumns: false,//是否显示 内容列下拉框 
 pageNumber: 1,//如果设置了分页,首页页码 
 // showPaginationSwitch:true,//是否显示 数据条数选择框 
 pageSize: 10,//如果设置了分页,页面数据条数 
 pageList: [10, 20, 40], //如果设置了分页,设置可供选择的页面数据条数。设置为All 则显示所有记录。 
 paginationPreText: '?',//指定分页条中上一页按钮的图标或文字,这里是< 
 paginationNextText: '?',//指定分页条中下一页按钮的图标或文字,这里是> 
 // singleSelect: false,//设置True 将禁止多选 
 search: false, //显示搜索框 
 data_local: "zh-US",//表格汉化 
 sidePagination: "server", //服务端处理分页 
 queryParams: function (params) {//自定义参数,这里的参数是传给后台的,我这是是分页用的 
  return {//这里的params是table提供的 
  cp: params.offset,//从数据库第几条记录开始 
  ps: params.limit//找多少条 
  };
 }
 }
 if (ob.url) {
 option.url = ob.url;
 }
 if (ob.columns) {
 option.columns = ob.columns;
 }
 $(ob.id).bootstrapTable('destroy');
 $(ob.id).bootstrapTable(option);
 if (ob.data) {
 $(ob.id).bootstrapTable('load', ob.data);
 }
 $(ob.id).on('load-success.bs.table', function (data) {//table加载成功后的监听函数 
 var $table = $(ob.id);
 var allTableData = JSON.stringify($table.bootstrapTable('getData'));//获取表格的所有内容行
 var obj = JSON.parse(allTableData);
 console.log(obj)
 Xstate.TableArr = obj;
 });
}

table加载成功写的函数,是因为我自己需要才写的。把table里的数据放在全局变量后,查询详细信息就不用再做ajax。
这个'load-success.bs.table'api我还有个问题,当这个table被多次load-success,这个函数就会被运行相同多次,对页面显示功能无影响。但自己还并不明白之前的table被$(ob.id).bootstrapTable('destroy')销毁了,为什么还会被记入。
函数被调用的时候写入自己的参数,colums是第一行表头。

var tab = { id: '#Table', url: '/HealthRecords/Selects', columns: columns }
HQCreatTables(tab);

.net的后台传的json也一定要有page值,rows是你的显示data,total:所有显示数据的条数。

[HttpGet]
 //GET: HealthRecords
 public JsonResult Selects(HealthRecordView m, int cp = -4, int ps = -5, string start = null, string end = null)
 {
  string sa = Session["hid"].ToString();
  m.hid = sa;
  string sqls = " SELECT * from A where hid='" + m.hid + "' ";
  string sqlss = " SELECT count(*) from A where hid='" + m.hid + "' ";
  if (!string.IsNullOrWhiteSpace(m.Name))
  {
  sqls += " and Name like '%" + m.Name + "%'";
  sqlss += " and Name like '%" + m.Name + "%'";
  }
  if (!string.IsNullOrWhiteSpace(start) && !string.IsNullOrWhiteSpace(end))
  {
  sqls += " and r_time > '" + start + "' and r_time <'" + end + "'";
  sqlss += " and r_time > '" + start + "' and r_time <'" + end + "'";
  }
  sqls += " order by r_time desc ";
  if (cp != -4&& ps != -5)
  {
  sqls += " limit "+ cp + "," + ps + " ";
  }
  
  var arr = db.Database.SqlQuery<HealthRecordView>(sqls).ToArray();
  int RoleNames = db.Database.SqlQuery<int>(sqlss).FirstOrDefault();
  return Json(new { page = cp, rows = arr, total = RoleNames }, JsonRequestBehavior.AllowGet);
 }

如上,一次生成不要传对后台数据不要限制更多条件的table已经生成了
如何当你有查询条件的时候,应该怎么做?

bootstrap Table服务端处理分页(后台是.net)

当你看都到图片的时候,你就明白了,只需要在调用函数的时候,在url里增加你的查询条件。

Javascript 相关文章推荐
使用jquery hover事件实现表格的隔行换色功能示例
Sep 03 Javascript
js简单实现用户注册信息的校验代码
Nov 15 Javascript
jquery对象和javascript对象即DOM对象相互转换
Aug 07 Javascript
浅谈javascript运算符——条件,逗号,赋值,()和void运算符
Jul 15 Javascript
微信小程序 获取当前地理位置和经纬度实例代码
Dec 05 Javascript
Bootstrap进度条实现代码解析
Mar 07 Javascript
angular.extend方法的具体使用
Sep 14 Javascript
jQuery实现页码跳转式动态数据分页
Dec 31 jQuery
VUE DOM加载后执行自定义事件的方法
Sep 07 Javascript
Iview Table组件中各种组件扩展的使用
Oct 20 Javascript
layui table动态表头 改变表格头部 重新加载表格的方法
Sep 21 Javascript
react ant Design手动设置表单的值操作
Oct 31 Javascript
安装vue-cli报错 -4058 的解决方法
Oct 19 #Javascript
BootStrap模态框不垂直居中的解决方法
Oct 19 #Javascript
微信小程序组件之srcoll-view的详解
Oct 19 #Javascript
JS实现点击循环切换显示内容的方法
Oct 19 #Javascript
bootstrap时间插件daterangepicker使用详解
Oct 19 #Javascript
vue-cli如何引入bootstrap工具的方法
Oct 19 #Javascript
JS开发中基本数据类型具体有哪几种
Oct 19 #Javascript
You might like
php+jquery编码方面的一些心得(utf-8 gb2312)
2010/10/12 PHP
php实现可运算的验证码
2015/11/10 PHP
PHP判断FORM表单或URL参数来的数据是否为整数的方法
2016/03/25 PHP
js实现权限树的更新权限时的全选全消功能
2009/02/17 Javascript
基于JQuery的asp.net树实现代码
2010/11/30 Javascript
javascript中的关于类型转换的性能优化
2010/12/14 Javascript
基于JQuery的抓取博客园首页RSS的代码
2011/12/01 Javascript
javascript控制Div层透明属性由浅变深由深变浅逐渐显示
2013/11/12 Javascript
一个实用的图片切换支持点击切换和自动轮播
2014/09/09 Javascript
iframe跨域通信封装详解
2015/08/11 Javascript
bootstrap表单按回车会自动刷新页面的解决办法
2017/03/08 Javascript
Angularjs 实现动态添加控件功能
2017/05/25 Javascript
JavaScript严格模式下关于this的几种指向详解
2017/07/12 Javascript
javascript自定义事件功能与用法实例分析
2017/11/08 Javascript
form表单数据封装成json格式并提交给服务器的实现方法
2017/12/14 Javascript
Vue2.0系列之过滤器的使用
2018/03/01 Javascript
webpack4的迁移的使用方法
2018/05/25 Javascript
vue中v-for通过动态绑定class实现触发效果
2018/12/06 Javascript
微信小程序非swiper组件实现的自定义伪3D轮播图效果示例
2018/12/11 Javascript
jQuery实现input[type=file]多图预览上传删除等功能
2019/08/02 jQuery
深入了解JavaScript 防抖和节流
2019/09/12 Javascript
vue动态禁用控件绑定disable的例子
2019/10/28 Javascript
vue setInterval 定时器失效的解决方式
2020/07/30 Javascript
浅谈python 线程池threadpool之实现
2017/11/17 Python
Python多线程爬虫实战_爬取糗事百科段子的实例
2017/12/15 Python
django限制匿名用户访问及重定向的方法实例
2018/02/07 Python
python微信跳一跳系列之自动计算跳一跳距离
2018/02/26 Python
Python远程视频监控程序的实例代码
2019/05/05 Python
python 动态迁移solr数据过程解析
2019/09/04 Python
Tensorflow 多线程与多进程数据加载实例
2020/02/05 Python
丝芙兰加拿大官方网站:SEPHORA加拿大
2018/11/20 全球购物
个性与发展自我评价
2014/02/11 职场文书
党章培训心得体会
2014/09/04 职场文书
2015年园林绿化工作总结
2015/05/23 职场文书
爸爸的三轮车观后感
2015/06/16 职场文书
MySQL系列之二 多实例配置
2021/07/02 MySQL