LayUi之手风琴的趣味案例

news2024/11/23 21:23:16

🥳🥳Welcome Huihui's Code World ! !🥳🥳

接下来看看由辉辉所写的关于LayUi的相关操作吧

目录

🥳🥳Welcome Huihui's Code World ! !🥳🥳

一.手风琴是什么

二.手风琴在什么时候使用(常见使用场景)  

三.怎么完成手风琴与数据库的数据交互 

效果展示

项目层级

1. 创建数据库:

2.编写实体类

3.工具类

4.dao层

5.servlet

6.jsp界面

四.所用图片


一.手风琴是什么

在前端开发中,框架中的手风琴(Accordion)是一种常见的UI组件,用于创建可折叠的内容面板。它通常由多个面板组成,每个面板包含一个标题和一个可隐藏/展开的内容区域

  • 手风琴面板只有一个面板可以处于展开状态,其他面板处于折叠状态。用户可以点击面板的标题部分,切换面板的展开和折叠状态,以显示或隐藏相应的内容区域
  • 框架中的手风琴通常提供了丰富的配置选项和自定义样式,以适应不同的设计需求和交互行为。它可以用于创建导航菜单、信息折叠、内容面板等各种场景,提供了一种可视化和简洁的方式来展示和切换页面的内容

二.手风琴在什么时候使用(常见使用场景)  

  • 1. 导航菜单:
    • 手风琴可以用于创建具有层级结构的导航菜单。每个菜单项可以是一个手风琴面板,展开后显示其子菜单项
  • 2. 内容折叠:
    • 手风琴可以用于在页面中折叠或展开大段内容,以便用户根据需要查看相关信息。这在网页表单、说明文档或用户个人资料等场景中特别有用
  • 3. FAQ页面:
    • 手风琴可以用于创建Frequently Asked Questions(常见问题)页面,其中每个问题是一个手风琴面板。用户可以点击问题标题以展开或折叠问题的答案
  • 4. 展示面板:
    • 手风琴可以用于创建可扩展的展示面板,用于显示不同内容或选项。例如,在产品列表或服务功能中,可以使用手风琴来呈现每个产品或功能的详细信息
  • 5. 折叠侧边栏:
    • 手风琴可以用于创建折叠式侧边栏,以节省页面空间。用户可以点击手风琴面板来展开或折叠侧边栏部分,以显示或隐藏相关内容或功能

三.怎么完成手风琴与数据库的数据交互 

效果展示

项目层级

 

  • 1. 创建数据库:

    • 首先,需要使用适当的数据库管理系统(如MySQL、MongoDB等)创建一个数据库,并设计适当的表结构来存储手风琴组件所需的数据【这里使用的是MySQL】
  • 2.编写实体类

    • package com.wh.entity;
      
      public class Accordion {
      private String title;
      private String aname;
      private String ainfo;
      private String aimg;
      
      public Accordion() {
      	// TODO Auto-generated constructor stub
      }
      
      public Accordion(String title, String aname, String ainfo, String aimg) {
      	super();
      	this.title = title;
      	this.aname = aname;
      	this.ainfo = ainfo;
      	this.aimg = aimg;
      }
      
      public String getTitle() {
      	return title;
      }
      
      public void setTitle(String title) {
      	this.title = title;
      }
      
      public String getAname() {
      	return aname;
      }
      
      public void setAname(String aname) {
      	this.aname = aname;
      }
      
      public String getAinfo() {
      	return ainfo;
      }
      
      public void setAinfo(String ainfo) {
      	this.ainfo = ainfo;
      }
      
      public String getAimg() {
      	return aimg;
      }
      
      public void setAimg(String aimg) {
      	this.aimg = aimg;
      }
      
      @Override
      public String toString() {
      	return "Accordion [title=" + title + ", aname=" + aname + ", ainfo=" + ainfo + ", aimg=" + aimg + "]";
      }
      
      
      }
      
  • 3.工具类

    • 实体类,工具类,配置文件等在之前已经全部展示过,在此有不懂的小伙伴,可以点击下方链接查看 👇

      LayUi之树形结构的详解(附有全案例代码)http://t.csdn.cn/yvL1t

  • 4.dao层

    • package com.wh.dao;
      
      import java.util.ArrayList;
      import java.util.List;
      
      import com.wh.entity.Accordion;
      import com.zking.util.BaseDao;
      import com.zking.util.BuildTree;
      import com.zking.util.PageBean;
      import com.zking.util.TreeVo;
      
      public class AccordionDao extends BaseDao<Accordion>{
      	//查询所有
      		public List< Accordion> list(  Accordion  accordion, PageBean pageBean) throws Exception {
      	  String sql="select * from accordion";
      			return super.executeQuery(sql,  Accordion.class, pageBean);
      		}
      		
      		public static void main(String[] args) {
      			AccordionDao a = new AccordionDao();
      			Accordion accordion = new Accordion();
      			try {
      				List<Accordion> list = a.list(accordion, null);
      				System.out.println(list);
      			} catch (Exception e) {
      				e.printStackTrace();
      			}
      		}
      	
      	
      //	//查询所有
      //	public List<TreeVo< Module>> menus(  Module  module, PageBean pageBean) throws Exception {
      //		List<TreeVo<Module>> menus = new ArrayList<>();
      //		List<Module> list = this.list(module, pageBean);
      //		for (Module m : list) {
      //			TreeVo<Module> tv = new TreeVo<>();
      //			tv.setId(m.getId()+"");
      //			tv.setParentId(m.getPid()+"");
      //			tv.setText(m.getName());
      //			menus.add(tv);
      //		}
      		return menus;
      //		return BuildTree.buildList(menus, "-1");//-1是顶级节点的id
      //	}
      		
      		
      }
      
  • 5.servlet

    • package com.wh.web;
      
      import java.util.List;
      
      import javax.servlet.http.HttpServletRequest;
      import javax.servlet.http.HttpServletResponse;
      
      import com.wh.dao.AccordionDao;
      import com.wh.entity.Accordion;
      import com.zking.framework.ActionSupport;
      import com.zking.framework.ModelDriver;
      import com.zking.util.PageBean;
      import com.zking.util.ResponseUtil;
      import com.zking.util.TreeVo;
      
      public class AccordionAction extends ActionSupport implements ModelDriver< Accordion>{
      private  Accordion  accordion = new  Accordion();
      private  AccordionDao ad = new  AccordionDao();
      
      	public void list(HttpServletRequest req, HttpServletResponse resp) {
      				try {
      					List<Accordion> list = ad.list(accordion, null);
      					ResponseUtil.writeJson(resp, list);
      				} catch (Exception e) {
      					e.printStackTrace();
      				}
      	}
      	@Override
      	public  Accordion getModel() {
      		return  accordion;
      	}
      
      }
      
  • 6.jsp界面

    • <%@ page language="java" contentType="text/html; charset=UTF-8"
      	pageEncoding="UTF-8"%>
      <html>
      	<head>
      	<%@include file="common/head.jsp"%>
      		<meta charset="utf-8">
      		<title>手风琴案例</title>
      	</head>
      	<body >
      		<fieldset class="layui-elem-field layui-field-title" style="margin-top: 50px;">
      		  <legend>🐻‍❄️童年大回忆🐻‍❄️</legend>
      		</fieldset>
      		
      		 
      		<div class="layui-collapse" lay-accordion=""  id ="accordion">
      		
      		
      		
      		  <div class="layui-colla-item"  >
      		    <h2 class="layui-colla-title">文豪</h2>
      		    <div class="layui-colla-content layui-show">
      		    
      		       <div class="layui-collapse" lay-accordion="">
              <div class="layui-colla-item">
                <h2 class="layui-colla-title">唐代</h2>
                <div class="layui-colla-content layui-show">
                  
                  
                </div>
                
              </div>
      		    </div>  
      		    </div>
      		  	</div>
      		  	
      		  	
      		  	
      			</div>
      			
      			
      			
      		
      		
      		
      		
      		
      		<script>
      		layui.use(['element', 'layer'], function(){
      		  var element = layui.element;
      		  var layer = layui.layer;
      		  var  $ = layui.$;
      		    $.ajax({
      				 url:"accordion.action?methodName=list",
      		 		dataType:'json',
      		 		method: 'post',
      				success: function(data) {
      					console.info(data)
      				var content=' ';
      					
      					$.each(data,function(i,n){
      						content+='<div class="layui-colla-item"> ';
      						content+='<h2 class="layui-colla-title">'+n.aname+'</h2> ';
      						content+='<div class="layui-colla-content"><img src="'+n.aimg+'" style="width:64px; height:64px; margin-right:100px;" />'+n.ainfo+'</div> ';
      						content+=' </div>';
      						
      					
      					})
      						
      					
      					$("#accordion").html(content);
      					 element.render(); 	
      				}
      			 })  
      		  
      		  
      		  
      		  
      		  //监听折叠
      		  element.on('collapse(test)', function(data){
      		    layer.msg('展开状态:'+ data.show);
      		  });
      		});
      		</script>
      	</body>
      </html>

四.所用图片

      好啦,今天的分享就到这了,希望能够帮到你呢!😊😊          

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/749637.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

亿发软件:工业4.0时代,MES智能制造系统引领传统生产制造业转型

随着制造企业迈入工业4.0时代&#xff0c;数字化智能制造的应用变得越来越重要。制造执行系统&#xff08;MES&#xff09;广泛应用于制造型企业生产管理中。工业智能制造MES系统帮助制造型企业实现智能制造升级&#xff0c;实现从需求、生产到交付全过程的智能工厂规划闭环管控…

no-unused-vars

找到 package.json 在rules输入 "no-unused-vars":"off"

【UE4 塔防游戏系列】01-前期准备

UE版本&#xff1a;4.24.3 课程视频链接&#xff1a;【虚幻4】UE4初学者进阶进阶教程&#xff08;合集&#xff09;-制作一个塔防游戏 1-8P&#xff08;全&#xff09;游戏单机游戏 步骤 1. 新建一个空白模板工程 2. 下载游戏资源 百度网盘 请输入提取码 提取码&#xf…

三菱fx2n以太网模块

大家好&#xff0c;今天要和大家分享一个有趣的故事&#xff0c;是关于一款神奇的以太网通讯处理器——捷米特JM-ETH-FX。这款产品来自捷米科技有限公司&#xff0c;是一款经济型的以太网通讯处理器&#xff0c;设计非常独特&#xff0c;能够满足日益增多的工厂设备信息化需求&…

基于linux下的高并发服务器开发(第一章)- 解决动态库加载失败的问题1.8

第一种方式&#xff1a;环境变量在终端配置&#xff0c;关掉终端就会失效 1、获取当前动态库所在路径 export LD_LIBRARY_PATH$LD_LIBRARY_PATH:/home/nowcoder/Linux/lesson06/library/lib ldd main ./main 第二种方式&#xff1a;永久配置环境变量&#xff08;用户级别配置…

测试面试时的经典问题分析

1. 接口测试是怎么做的&#xff0c;如何分析数据&#xff0c;可能需要讲一个实际的例子&#xff0c;比如请求的接口不对 参数不对 读取字段不对 接口我们做分为1.功能接口测试 2.接口自动化回归测试 我们接口的一个流程&#xff1a; a.需求分析 b.根据需求梳理接口测试点(评…

骨传导耳机效果怎么样?想入手骨传导耳机看这篇文章就够了

什么是骨传导传声&#xff1f;大家都知道声音是需要通过空气传播的&#xff0c;但是每个人听到的声音&#xff0c;除了大部分通过空气传播传入我们的耳朵&#xff0c;再由鼓膜振动传入听觉神经&#xff0c;还有一部分是通过骨骼的振动&#xff0c;不通过鼓膜的振动传递给听觉神…

mysql-windows 安装

今天&#xff0c;由于一个功能要用到mysql&#xff0c;所以下载了 mysql-8.0.33-winx64 的版本&#xff0c;突然发现&#xff0c;以前都是安装的Linux 版本&#xff0c;windows版本不会安装了&#xff0c;查看官网试着装了一次&#xff0c;记录本次经历&#xff1a; 软件下载 …

【项目管理】成本管理

一.成本管理的概述 在项目上对成本进行管理和控制是为了让项目经理真正了解完成项目所需要消耗的时间和所需要的资源&#xff0c;从而对其进行相应的成本控制。成本管理主要分成以下三个方面的内容&#xff1a; 二.成本估算 成本估算是对整个项目投入的各种资源的成本进行估算&…

数据结构--栈

一、栈 数组是一种连续存储、随机访问的线性表&#xff0c;链表属于分散存储、连续访问的线性表。它们每个数据都有其相对位置&#xff0c;有至多一个直接前驱和之多一个直接后继。栈&#xff08;Stack&#xff09;和队列&#xff08;Queue&#xff09;也属于线性表&#xff0c…

什么耳机带着舒服?这几款耳机戴过的人都说好

骨传导耳机凭借不入耳就能轻松听音乐的特点&#xff0c;被越来越多人所认识&#xff0c;相比传统的入耳式耳机&#xff0c;骨传导耳机拥有更多的可玩性&#xff0c;比如说跑步、游泳、健身都可以佩戴骨传导耳机&#xff0c;即使长时间佩戴也不会出现不适感&#xff0c;也不会出…

《CSDN铁粉经济学:如何快速涨粉并转化为铁粉》

目录 一、铁粉的定义 二、获取铁粉的方法 要获取铁粉&#xff0c;首先需要拥有粉丝。 &#x1f9e9;粉丝与铁粉的关系 &#x1f525;热榜与领域榜 三、我的创作路程 四、总结 首先解释什么是铁粉&#xff1a;官方定义为&#xff0c;在90天内阅读、购买专栏或其他互动&…

IP地址划分

1 IP 地址的格式 IP 地址 网络地址 主机地址 如果 IP 进行了子网划分&#xff1a; 则IP地址网络地址子网地址主机地址 网络地址是互联网上的节点在网络中具有的逻辑地址。 MAC 地址&#xff1a;处于数据链路层&#xff1b;IP 地址&#xff1a;处于网络层&#xff1b;端口号…

部署jenkins(使用华为云war包,手动制作jenkins镜像)

部署jenkins&#xff08;使用华为云war包&#xff0c;手动制作jenkins镜像&#xff09; 环境准备制作jenkins镜像启动jenkins服务进入jenkins登录页 配置jenkins用户配置jenkins代理通道 环境准备 1、JDK镜像准备docker pull openjdk:8-jdk-oracle 2、jenkins的war包准备 http…

adb shell dumpsys SurfaceFlinger

adb shell dumpsys SurfaceFlinger adb shell dumpsys SurfaceFlinger分析Android 系统图层 此命令输出的内容不较多&#xff0c;可以将输出内容重定向到一个文件中 adb shell dumpsys SurfaceFlinger > ./Downloads/surface.txt如下的内容&#xff0c;过滤HWC layers 另外…

第六章 NVMe 介绍

6.4 寻址双雄&#xff1a;PRP 和 SGL 1. 主机往 SSD 写入用户数据 2. 主机读取 SSD 上的用户数据 在上面两个过程中&#xff0c;主机在与 SSD 的数据传输过程中&#xff0c;主机是被动的一方&#xff0c;SSD 是主动的一方。即&#xff0c;主机需要数据&#xff08;读数据&#…

JVM重点整理

一、虚拟机架构图 二、类加载过程 类加载器的作用&#xff1a;负责把class文件加载到内存中 类加载过程&#xff1a; 加载&#xff1a; 通过类的全限定名获取此类的二进制字节流文件的编码结构---->运行时的内存结构内存中生成一个class对象 链接&#xff1a; 验证&#x…

LangChain大型语言模型(LLM)应用开发(五):评估

LangChain是一个基于大语言模型&#xff08;如ChatGPT&#xff09;用于构建端到端语言模型应用的 Python 框架。它提供了一套工具、组件和接口&#xff0c;可简化创建由大型语言模型 (LLM) 和聊天模型提供支持的应用程序的过程。LangChain 可以轻松管理与语言模型的交互&#x…

【状态估计】基于UKF法、AUKF法、EUKF法电力系统三相状态估计研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

【PHP面试题40】能够使HTML和PHP分离开使用的模板技术有哪些

文章目录 一、前言二、模板技术的好处三、常用的模板技术3.1 PHP模板引擎3.2 前端模板引擎3.3 前后端分离技术 四、Smarty模板使用演示4.1 在项目中引入Smarty模板引擎的文件4.2 引入Smarty.class.php文件4.3 创建一个Smarty对象4.4 变量定义4.5 创建一个Smarty模板文件4.6 绑定…