Layui之选项卡案例 详细易懂

简介: Layui之选项卡案例 详细易懂

本期精彩:利用Layui框架实现动态选项卡

⭐ 继上一篇已经实现了左边的树形菜单栏,这一关卡我们已通过,接下来就是实现右边的动态选项卡的关卡,上个关卡的效果及链接

⭐ 链接:http://t.csdn.cn/tYccL

一.步骤

在开始编写之前我们来理清思路,到底该怎么去做??

1.我们是借助于Layui框架进行编写,首先去看看里面有没有这个模块,当然里面是有的哈哈哈

2.接着我们把layui的模板复制过来

3.给二级菜单设置点击事件,使之右边点击能够新增选项卡

4.将二级菜单的名称设置到选项卡上

5.去除重复项,因为点击一下就会新增一个页面

6.当点击已经存在的选项卡的时候,不再新增而是选中,这样就完成我们的选项卡功能啦~

二.思路编写

       2.1 复制Layui选项卡

2.2.新增选项卡

其实这个Layui里面也是给了的,我们只要复制即可

这一步写完之后的效果:

三.代码编写

我采用的是代码分离,下面是js代码

var element,layer,util,$;
layui.use(['element', 'layer', 'util'], function(){
 element = layui.element ,
  layer = layui.layer,
  util = layui.util,
  $ = layui.$;
  $.ajax({
    url:"permission.action?methodName=menus",
    dataType:"json",
    success:function(data){
      console.log(data)
    //定义一个字符串进行拼接
    var htmlStr="";
    //遍历数据
    $.each(data,function(i,n){
      //拼接
      htmlStr+='<li class="layui-nav-item layui-nav-itemed">';
      htmlStr+='<a class="" href="javascript:;">'+n.text+'</a>';
      //如果其存在孩子,就在进行循环
       if(n.hasChildren){
        var children =n.children;
        //因为这个只需要循环一次,所以放在循环外面
        htmlStr+='<dl class="layui-nav-child">';
        $.each(children,function(index,node){
          //这个需要循环多次
          htmlStr+='<dd><a href="javascript:;" onclick="Addtab(\''+node.text+'\',\''+node.attributes.self.url+'\',\''+node.id+'\')">'+node.text+'</a></dd>';
        })
        htmlStr+='</dl>';
      } 
      htmlStr+='</li>';
    })
      $("#menu").html(htmlStr);
    //渲染
    element.render('menu'); 
    }
  });
  });
 /* 选项卡 */
    /*   1.将其从layui文档中复制一份 
       2.新增选项卡,设置点击事件
       3.将菜单栏的名字复制给选项卡
       4.去除重复项目
       5.如果点击的选项卡已经存在就选中而不是打开一个新的
 */
 function Addtab(title,content,id){
   /*  alert(12) */
   var $node =$('li[lay-id="'+id+'"]');
   //console.log($node);
   //如果选项卡不存在则打开新的选项卡
   if($node.length == 0){
     element.tabAdd('demo', {
           title: title
           ,content: "<iframe frameborder='0' src='"+content+"' scrolling='auto' style='width:100%;height:100%;'></iframe>"
           ,id: id 
         }) 
   }
   //如果已经存在则选中它
     element.tabChange('demo', id); //切换到:用户管理
 }

3.1 解析js代码

四.效果图

 

就这样就完成啦~这个关卡完美通过!!但我们也不要懈怠,继续闯关吧~

相关文章
|
前端开发 JavaScript 安全
前端框架Layui实现动态选项卡&iframe使用(附源码)
前端框架Layui实现动态选项卡&iframe使用(附源码)
2298 0
|
前端开发 网络安全
layui如何实现添加数据时关闭页面层,并实时刷新表格数据?
layui如何实现添加数据时关闭页面层,并实时刷新表格数据?
|
前端开发 JavaScript Java
【Layui】入门必看:登录注册界面搭建与功能开发解析
Layui是一款面向前端开发者的轻量级JavaScript库,旨在简化网页开发过程。它提供了丰富的基础UI组件和常用的工具函数,使开发者可以更快速地构建出优秀的网页界面。Layui具备以下特点和功能:简洁易用:Layui的设计理念是简洁而易用,它提供了直观的API和简单的配置,使开发者可以更快速地上手并快速构建界面。模块化加载:Layui采用模块化的加载方式,每个功能都是以独立的模块形式存在,开发者可以根据自己的需求按需加载所需的模块,避免了不必要的资源浪费。基础UI组件。
|
JavaScript Java 数据格式
Layui数据表格(table)前后台交互
Layui数据表格(table)前后台交互
800 0
|
JavaScript 算法 前端开发
layui框架实战案例(16):xm-select下拉多选插件实战记录(远程搜索、过滤、翻页、单选、提示文字)
layui框架实战案例(16):xm-select下拉多选插件实战记录(远程搜索、过滤、翻页、单选、提示文字)
3037 0
|
5月前
|
移动开发 安全 数据安全/隐私保护
怎么通过链接跳转加微信好友
深度链接技术在微信好友添加中的应用 技术背景
|
JavaScript 前端开发
layui下拉框xm-select自定义搜索使用方法
【10月更文挑战第28天】`xm - select` 是基于 Layui 的下拉框增强插件,支持自定义搜索功能。实现步骤包括:1. 引入 Layui 和 xm - select 的核心文件;2. 创建下拉框的基本 HTML 结构;3. 使用 `layui.use` 函数初始化插件并配置搜索功能;4. 可选地进行高级自定义搜索优化,如模糊匹配、多字段搜索和实时更新数据。通过这些步骤,可实现灵活的下拉框搜索功能。
3245 1
|
12月前
|
JavaScript
jquery图片和pdf文件预览插件
EZView.js是一款jquery图片和pdf文件预览插件。EZView.js可以为图片和pdf格式文件生成在线预览效果。支持的文件格式有pdf、jpg、 png、jpeg、gif。
345 16
|
JSON Java 数据格式
LayUI之树形菜单的实现(详细描述附带项目案例)
LayUI之树形菜单的实现(详细描述附带项目案例)
480 0
LayUI之树形菜单的实现(详细描述附带项目案例)
|
云安全 安全 网络协议
游戏服务器被攻击,游戏盾防护具有哪些作用
在数字化时代蓬勃发展,但也面临着黑客攻击、DDoS和CC攻击等网络安全威胁。游戏盾防护应运而生,专为游戏行业提供全面的网络安全解决方案,不仅有效防御大型DDoS攻击,还能精准抵御特有TCP协议的CC攻击,同时通过智能行为分析和业务安全防护,确保游戏服务器的稳定运行,提升用户体验,维护游戏生态和品牌声誉,助力游戏行业健康发展。

热门文章

最新文章