LayUI tab选项卡 + 分页展示 实现 Tab选项卡切换显示对应数据

要求:实现tab选项卡改变的同时展示数据也跟着改变 实现条件: 1、选项卡【官网 – 文档/示例 – 页面元素 – 选项卡】 2、数据表格【官网 – 文档/示例 – 内置模块 – 数据表格】 3、分页【官网 – 文档/示例 – 内置模块 – 分页】

具体实现过程:

1、 先找选项卡、使用默认的tab、然后查看代码、复制对应的代码。

2、 然后改成自己想要显示效果、如下:

3、 然后查看具体的代码如下:

4、 获取Tab选项卡的状态值

到目前为止、实现了点击对应的Tab选项卡、展示对应的内容。但是、我现在要展示的订单的状态对应的数据、应拿到对应的每一个Tab选项卡的状态值、然后将内容展示在对应的位置。那如何获取每一个选项课的状态值呢?

4.1 先给每一个Tab选项卡一个自定义属性、用来存放状态值。具体代码如下:

4.2 获取对应的值。在官网手册文档上、我们可以找到监听Tab切换事件

4.3 获取状态

然后直接copy代码到我们自己的目录下、然后运行、会发现没有效果。那如何解决呢?仔细看代码、会发现监听的是tab(filter)、那么我们需要给一个lay-filter。那这个filter给谁呢?还是回到手册、往上看、会发现事件监听中有一个默认情况下、那我们和它一样、直接粘在class为layui-tab的div上即可、将filter换成我们自己的名字。到这一步、运行发现Tab选项卡切换的时候、可以获取到对应的DOM元素、索引、容器等,那我们如何获取对应的状态码呢?很简单、和jQuery中的写法一致、直接通过attr获取即可、具体如下:

5、 数据展示 (分页加载数据)

到这一步、基本工作完成了、效果也是OK。那么要实现Tab选项卡切换的时候、数据展示为我们自己的数据、同时根据选项卡状态的不同、展示不同的数据。那么该如何操作呢?其实很简答的,在每一个的div中加入数据展示表格table即可;然后再加分页的代码。

分页如何加载、请看我的另外一篇文章。地址:https://www.cnblogs.com/laowenBlog/p/11240503.html

6、 到这一步、运行查看效果会发现默认的所有订单数据是OK了、但是切换选项卡、其他的数据确没有显示。具体如下图:

7、 解决显示对应数据

那么这没有数据又该如何解决呢?很简单、会发现在table.rander加载的时候、只是将数据展示在全部订单中了、(通过代码elem: '#order_all'来体现)、那如何展示在应该展示的位置上呢?会发现我们已经在每一个table上给增加了id属性、只要修改elem参数的值即可。那该如何解决这个问题呢?怎么让它成动态的呢?很简单、只需将table.rander写在一个方法中、每一次切换选项卡的时候调用即可。

8、 最终实现效果如下:

9、 具体代码

layui

默认风格的Tab

  • 全部订单
  • 待付款
  • 待收货
  • 已完成
  • 已取消

layui.use(['element', 'table'], function () {

// Tab的切换功能,切换事件监听等,需要依赖element模块

var $ = layui.jquery, table = layui.table, element = layui.element;

// 初始化加载

getList('#order_all', '')

// 监听tab切换 操作:文档 - 内置模块 - 常用元素操作 element - 监听tab切换

element.on('tab(tab-all)', function (data) {

// console.log(this); // 当前Tab标题所在的原始DOM元素

// console.log(data.index); // 得到当前Tab的所在下标

// console.log(data.elem); // 得到当前的Tab大容器

var status = $(this).attr('data-status')

var position = '#order_all'

switch (status) {

case '1': position = '#order_pay'; break;

case '3': position = '#order_receive'; break;

case '5': position = '#order_finish'; break;

case '6': position = '#order_cancel'; break;

default: position = '#order_all';

}

getList(position, status)

})

// 公共方法

function getList(position, status = '') {

table.render({

elem: position

, method: 'get'

, url: 'http://localhost/php/public/index.php/index/order/getList'

, where: {

status: status

}

, limit: 5

, limits: [2, 3, 5]

, request: {

pageName: 'page' //页码的参数名称,默认:page

, limitName: 'size' //每页数据量的参数名,默认:limit

}

, cellMinWidth: 80 //全局定义常规单元格的最小宽度,layui 2.2.1 新增

, cols: [[

{ field: 'order_id', title: 'ID', sort: true }

, { field: 'order_create_time', title: '订单创建时间' }

, { field: 'order_code', title: '订单编号', sort: true }

, { field: 'goods_id', title: '商品id' }

, { field: 'produt_id', title: '货品id' } //minWidth:局部定义当前单元格的最小宽度,layui 2.2.1 新增

, { field: 'order_product_num', title: '购买的数量', sort: true }

, { field: 'order_price_one', title: '单价', sort: true }

, { field: 'order_price_all', title: '总价' }

, { field: 'statusName', title: '状态', sort: true }

, { field: 'action', title: '操作', sort: true }

]]

, page: true

, parseData: function (res) { //将原始数据解析成 table 组件所规定的数据

return {

"code": res.code, //解析接口状态

"msg": res.msg, //解析提示文本

"count": res.data.total, //解析数据长度

"data": res.data.data //解析数据列表

};

}

});

}

})

原文出处:https://www.cnblogs.com/laowenBlog/p/11252812.html

layui获取tab页id_LayUI的Tab选项卡切换显示对应数据相关推荐

  1. Bootstrap tab页签刷新加载不显示,只有点击其他标签后第一个才显示

    Bootstrap tab页签刷新加载不显示,只有点击其他标签后第一个才显示 解决方法: 在tab-content里面的tab-pane中添加active <!-- 导航区 --> < ...

  2. 切换tab页时,tab页中的echart变形问题

    本文为博主原创,未经允许,不得转载: 在两个tab页中,分别展现了两个echart图表,同样的格式与写法,但只有在默认选中的tab页中的图表显示的是正常的, 但进入另一个tab页中时,图表则产生了变形 ...

  3. 用onetab插件管理chrome的tab页,解决.crx安装时显示invalid的问题

    chrome的tab页一旦关闭了再去翻历史记录重新打开实在麻烦,看到小众软件介绍onetab可以方便管理tab页,于是下载了试一下.在国内站点上下载了.crx文件离线安装,结果显示crx header ...

  4. 在bootstrap ace样式框架上修改的后台管理型模板(Tab页后台管理模板)

    后台管理模板开始用frameset布局,但是有时候会遮挡比如上面导航或者左边导航的二级三级弹出菜单,因为宽度被限制了,所以有时候就用easyui或者ext的,但是样式不好看,然后看到了bootstra ...

  5. Tab选项卡切换效果JavaScript汇总

    tab切换在现在的网页上,真是十分的常用呀.但是tab切换的JavaScript实现却有很多需要注意的地方,如何用最少的代码,最灵活的实现.这里收集了37个tab实现的JavaScript代码,在此备 ...

  6. PHP更新小程序,微信小程序Tab页切换更新数据详细介绍

    这篇文章主要介绍了微信小程序 Tab页切换更新数据的相关资料,需要的朋友可以参考下 微信小程序 Tab页切换更新数据 微信小程序还处于内测阶段,最不方便的莫过于官方在不停的更新,前几天写的功能隔个几天 ...

  7. bootstrap在一个tab页调用另一个tab页的方法

    在我们开发过程中使用bootstrap框架的时候,会经常使用bootstrap的标签页,如果我们在tab子页面中操作的数据,需要在父tab里改变状态到时候,并且不关闭当前子tab页,父tab页只是局部 ...

  8. JavaScript原生代码编写选项卡Tab页跳转功能

    本文主要介绍使用 JavaScript 原生代码编写选项卡Tab页的跳转功能. 一.先来看看效果图 二.准备文字素材 文字素材选择诗经里面的三首古诗,分别是关雎.蒹葭和采薇 <关雎> 关关 ...

  9. tab页:ng-zorro-antd使用后台分页,获取数据、渲染数据

    后台分页 1.获取栏目名称 2.通过栏目名称获取数据 3.点击栏目切换数据 4.点击分页切换数据 html代码 <!--获取栏目名称 --> <ul class="tabs ...

最新文章

  1. linux讲解系列:激活script
  2. Android使用NDK---函数参数传递-基本类型和数组
  3. c语言拍飞虫课程设计报告,C++语言课程计一拍飞虫.doc
  4. WAS6.1在JDK1.5环境下JSP无法编译问题
  5. C语言——九九乘法表
  6. 【光纤传输特性】图文并茂,你该了解这些
  7. js 验证的银行卡信息(哪家银行、储蓄卡还是信用卡)
  8. 一根网线连接两台电脑,从而实现数据的传输
  9. 实习工作日志-2019.02.25
  10. JavaWeb-狂神-P11
  11. 电阻(4)之上拉电阻与下拉电阻详解
  12. 9、RH850 SPI(CSIH) 通讯功能和配置
  13. UML图绘制-----时序图的画法
  14. 芯片破壁者(四):兵戈未息的DRAM战场
  15. Git 多人协作以及 版本冲突问题解决
  16. LDREX and STREX
  17. 安全渗透测试工具整理
  18. 极客日报:为什么QQ比微信更受年轻人欢迎?iPhone13出现红绿双色屏;Spring Boot 2.6.1 发布
  19. 龙应台点评奥斯卡最佳外语片《窃听风暴》
  20. Sigmastar与Novatek联咏IPC芯片规格对比_整理不易_先赞后存

热门文章

  1. (附源码)ssm微课堂知识考核系统 毕业设计 141147
  2. 【初等数论】同余方程、与二次剩余互反律
  3. Gorm中HasMany
  4. 百度站长链接实时提交工具V1.0
  5. svg格式的图片转化为 png 格式
  6. springboot毕设项目一物一码防伪追溯系统6u4s5(java+VUE+Mybatis+Maven+Mysql)
  7. android studio使用蓝叠模拟器调试
  8. windows-sys19:vmware安装win11系统详细教程
  9. Unix,Linux和Windows
  10. 数据分析 --- 可视化图表