当前位置: 首页 > news >正文

jQuery EasyUI 菜单与按钮 - 创建菜单按钮(Menu Button)

jQuery EasyUI 菜单与按钮 - 创建菜单按钮(Menu Button)

jQuery EasyUImenubutton组件是一个结合了linkbuttonmenu的下拉菜单按钮。点击或鼠标悬停在按钮上时,会自动显示关联的下拉菜单。它常用于工具栏、导航栏等场景,提供更紧凑的操作方式。

menubutton默认在点击按钮时显示菜单,支持图标、纯文本、禁用等 linkbutton 的所有特性。

官方参考:

  • 教程:https://www.jeasyui.com/tutorial/mb/menubutton.php
  • 文档:https://www.jeasyui.com/documentation/menubutton.php
  • 在线 Demo:https://www.jeasyui.com/demo/main/index.php?plugin=MenuButton
步骤 1: 引入 EasyUI 资源
<linkrel="stylesheet"type="text/css"href="https://www.jeasyui.com/easyui/themes/default/easyui.css"><linkrel="stylesheet"type="text/css"href="https://www.jeasyui.com/easyui/themes/icon.css"><scripttype="text/javascript"src="https://code.jquery.com/jquery-1.12.4.min.js"></script><scripttype="text/javascript"src="https://www.jeasyui.com/easyui/jquery.easyui.min.js"></script>
步骤 2: 创建菜单按钮(最简单方式)

直接在<a>标签上添加class="easyui-menubutton",并通过menu属性指定关联的菜单 ID。

<!-- 菜单按钮 --><ahref="javascript:void(0)"class="easyui-menubutton"data-options="menu:'#mm1',iconCls:'icon-edit'">编辑</a><ahref="javascript:void(0)"class="easyui-menubutton"data-options="menu:'#mm2',iconCls:'icon-help',plain:false">帮助</a><!-- 关联的菜单1 --><divid="mm1"class="easyui-menu"style="width:120px;"><divdata-options="iconCls:'icon-undo'">撤销</div><divdata-options="iconCls:'icon-redo'">重做</div><divclass="menu-sep"></div><divdata-options="iconCls:'icon-cut'">剪切</div><divdata-options="iconCls:'icon-copy'">复制</div><divdata-options="iconCls:'icon-paste'">粘贴</div></div><!-- 关联的菜单2 --><divid="mm2"class="easyui-menu"style="width:150px;"><div>项目1</div><div>项目2</div><divclass="menu-sep"></div><div><span>子菜单</span><div><div>子项1</div><div>子项2</div></div></div></div>
步骤 3: 工具栏风格(plain 属性)

常用于 datagrid 或 panel 的 toolbar。

<divstyle="padding:10px;background:#fafafa;"><ahref="javascript:void(0)"class="easyui-menubutton"data-options="menu:'#mm3',plain:true,iconCls:'icon-save'">保存</a><ahref="javascript:void(0)"class="easyui-menubutton"data-options="menu:'#mm4',plain:true,iconCls:'icon-print'">打印</a></div>
步骤 4: 处理菜单点击事件
<scripttype="text/javascript">$(function(){// 为菜单添加点击事件(推荐绑定到菜单本身)$('#mm1').menu({onClick:function(item){$.messager.alert('提示','您点击了:'+item.text);// 这里可以执行具体操作,如新增、删除等}});});</script>
步骤 5: 完整示例
<!DOCTYPEhtml><html><head><metacharset="UTF-8"><title>jQuery EasyUI Menu Button 示例</title><linkrel="stylesheet"type="text/css"href="https://www.jeasyui.com/easyui/themes/default/easyui.css"><linkrel="stylesheet"type="text/css"href="https://www.jeasyui.com/easyui/themes/icon.css"><scripttype="text/javascript"src="https://code.jquery.com/jquery-1.12.4.min.js"></script><scripttype="text/javascript"src="https://www.jeasyui.com/easyui/jquery.easyui.min.js"></script></head><body><h2>jQuery EasyUI 菜单按钮(Menu Button)示例</h2><p>标准菜单按钮:</p><ahref="javascript:void(0)"id="mb-edit"class="easyui-menubutton"data-options="menu:'#mm-edit',iconCls:'icon-edit'">编辑</a><divid="mm-edit"class="easyui-menu"style="width:150px;"><divdata-options="iconCls:'icon-cut'">剪切</div><divdata-options="iconCls:'icon-copy'">复制</div><divdata-options="iconCls:'icon-paste'">粘贴</div><divclass="menu-sep"></div><divdata-options="iconCls:'icon-remove'">删除</div></div><p>工具栏风格:</p><divstyle="padding:10px;background:#eee;"><ahref="#"class="easyui-menubutton"data-options="menu:'#mm-file',plain:true">文件</a><ahref="#"class="easyui-menubutton"data-options="menu:'#mm-help',plain:true,iconCls:'icon-help'">帮助</a></div><divid="mm-file"class="easyui-menu"><div>新建</div><div>打开</div><div>保存</div></div><divid="mm-help"class="easyui-menu"><div>关于</div></div><script>$(function(){$('#mm-edit').menu({onClick:function(item){$.messager.alert('操作','执行:'+item.text);}});});</script></body></html>
关键说明
  • 创建方式:只需指定menu:'#menuId',无需额外 JavaScript 初始化。
  • 常用属性
    • menu:关联菜单的 ID(必填)。
    • duration:菜单显示/隐藏动画时长。
    • plain:true:简洁模式(适合工具栏)。
    • 支持所有 linkbutton 属性(如iconClsdisabled)。
  • 事件:推荐在 menu 上绑定onClick,而非 menubutton。
  • 优势:无需手动 show/hide 菜单,自动处理下拉。
扩展
  • splitbutton:类似 menubutton,但按钮主体可点击执行默认操作,下拉箭头显示菜单(下一个常见组件)。
  • 与 datagrid toolbar 结合:非常适合 CRUD 操作按钮。

更多示例:

  • 官方创建菜单按钮:https://www.jeasyui.com/tutorial/mb/menubutton.php
  • 键盘导航:https://www.jeasyui.com/easyui/demo/menubutton/nav.html

如果需要 splitbutton(分裂按钮)、动态菜单、或与 datagrid 集成示例,请继续提问!

http://www.cnnetsun.cn/news/101044.html

相关文章:

  • jQuery EasyUI 布局 - 创建折叠面板
  • jQuery EasyUI 布局 - 动态添加标签页(Tabs)
  • 基于 YOLOv8 + DeepSORT + PyQt5 构建的 多目标车辆测速系统 多目标跟踪和车辆测速 (1)
  • 告别手动计算:安全区域适配效率提升300%
  • 33、Ubuntu服务器故障排查指南
  • 从零开始:解决brew命令不存在的完整指南
  • 详解!30+基于YOLO开源框架视频AI算法,覆盖低空经济无人机巡检、海康/大华摄像头,城市综合治理、智慧工地、森林巡检
  • MySQL变长字段的庖丁解牛
  • EmotiVoice能否生成客服安抚语音?共情语调设计
  • xxx is not in the sudoers file. This incident will be reported问题解决
  • 电商网站Nginx部署实战:高并发场景优化方案
  • h5嵌入鸿蒙跳转支付宝支付,报错:Syntax error:JSON Parse error:Expected ‘}‘
  • 传统VS现代:Docker容器启动效率对比实验
  • Vue小白必看:5分钟搞懂Vue2和Vue3的区别
  • AI如何帮你自动配置Spring Boot的spring.config.import
  • KKT条件在AI优化算法中的核心作用
  • 30秒创建路径工具类:AI代码生成实战
  • 5分钟打造Python版本检测机器人
  • 电商秒杀系统实战:Firebase实时数据库的高并发解决方案
  • Clangd vs 传统IDE:C++开发效率对比测试
  • 1小时打造GetWordSearch.exe原型:快速验证你的创意
  • Cursor在游戏开发中的实战应用案例
  • AI如何助力100%vendos实现自动化开发
  • Supervisord零基础入门:从安装到第一个守护进程
  • AI 如何帮助 Solidity 新手快速上手智能合约开发
  • 1小时打造PDF预览修复工具原型:快马平台体验
  • 企业级案例:某电商平台node-sass升级踩坑实录
  • 智能穿戴设备中的LDO电路设计实战
  • 用Packet Tracer快速验证网络架构设计的3种方法
  • 前端新手必学:object-fit的5分钟入门指南