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

jQuery EasyUI 数据网格 - 添加工具栏

jQuery EasyUI 数据网格 - 添加工具栏(Toolbar)

datagridtoolbar是最常用的扩展区域,用于放置新增、编辑、删除、查询、导出等操作按钮,以及搜索框、分页自定义等控件。EasyUI 支持两种方式添加工具栏:

  1. HTML 定义工具栏(推荐,最灵活)
  2. JavaScript 配置工具栏(适合动态生成)

本教程演示最常用的 HTML 方式,并结合实际 CRUD 操作按钮。

官方参考:

  • 教程:https://www.jeasyui.com/tutorial/datagrid/datagrid4.php
  • 在线 Demo:https://www.jeasyui.com/demo/main/index.php?plugin=DataGrid&pitem=Toolbar
步骤 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: 创建 DataGrid 和工具栏 DIV
<!-- 工具栏(单独定义一个 div) --><divid="toolbar"><ahref="javascript:void(0)"class="easyui-linkbutton"iconCls="icon-add"plain="true"onclick="newUser()">新增</a><ahref="javascript:void(0)"class="easyui-linkbutton"iconCls="icon-edit"plain="true"onclick="editUser()">编辑</a><ahref="javascript:void(0)"class="easyui-linkbutton"iconCls="icon-remove"plain="true"onclick="deleteUser()">删除</a><ahref="javascript:void(0)"class="easyui-linkbutton"iconCls="icon-reload"plain="true"onclick="reload()">刷新</a><spanstyle="margin-left:20px;">|</span><inputid="search_name"class="easyui-textbox"prompt="输入姓名搜索"style="width:150px;"><ahref="javascript:void(0)"class="easyui-linkbutton"iconCls="icon-search"plain="true"onclick="doSearch()">搜索</a></div><!-- 数据网格 --><tableid="dg"class="easyui-datagrid"title="用户管理"style="width:800px;height:500px"data-options="url:'get_users.php',fitColumns:true,singleSelect:true,pagination:true,rownumbers:true,toolbar:'#toolbar'"><thead><tr><thfield="id"width="80">ID</th><thfield="username"width="100">用户名</th><thfield="name"width="100">姓名</th><thfield="email"width="180">邮箱</th><thfield="phone"width="120">电话</th><thfield="regdate"width="100">注册日期</th></tr></thead></table>
步骤 3: JavaScript 操作函数
<scripttype="text/javascript">// 新增functionnewUser(){// 打开 dialog 或跳转页面$.messager.alert('操作','打开新增窗口');}// 编辑functioneditUser(){varrow=$('#dg').datagrid('getSelected');if(row){$.messager.alert('编辑','编辑用户:'+row.name+' (ID: '+row.id+')');// 实际可打开 dialog 并 load 数据}else{$.messager.alert('提示','请先选择一行!');}}// 删除functiondeleteUser(){varrow=$('#dg').datagrid('getSelected');if(row){$.messager.confirm('确认','确定删除用户 '+row.name+' 吗?',function(r){if(r){// $.post('delete_user.php', {id:row.id}, function(result){ ... });$('#dg').datagrid('reload');// 模拟刷新$.messager.show({title:'成功',msg:'删除成功'});}});}else{$.messager.alert('提示','请先选择一行!');}}// 刷新functionreload(){$('#dg').datagrid('reload');}// 搜索functiondoSearch(){$('#dg').datagrid('load',{name:$('#search_name').val()});}</script>
关键说明
  • toolbar:‘#toolbar’:datagrid 的data-options中指定工具栏 div 的 ID。
  • plain=“true”:按钮简洁风格(无背景),适合工具栏。
  • 搜索功能:通过$('#dg').datagrid('load', {param:value})传递参数给后端。
  • 工具栏布局:可以使用<div>、表格、或easyui-panel包裹多个行工具栏。
扩展:多行工具栏 + 分隔线
<divid="toolbar"style="padding:5px;"><div><ahref="#"class="easyui-linkbutton"iconCls="icon-add"plain="true">新增</a><ahref="#"class="easyui-linkbutton"iconCls="icon-edit"plain="true">编辑</a><ahref="#"class="easyui-linkbutton"iconCls="icon-remove"plain="true">删除</a></div><divstyle="margin-top:5px;">姓名:<inputclass="easyui-textbox"style="width:120px;">日期:<inputclass="easyui-datebox"style="width:100px;"><ahref="#"class="easyui-linkbutton"iconCls="icon-search">查询</a></div></div>
完整效果
  • 工具栏紧贴在 datagrid 标题栏下方。
  • 按钮美观、带图标、响应点击。
  • 支持搜索、增删改查等完整 CRUD 操作基础。

更多示例:

  • 官方工具栏示例:https://www.jeasyui.com/tutorial/datagrid/datagrid4.php
  • 自定义工具栏按钮:https://www.jeasyui.com/demo/main/index.php?plugin=DataGrid&pitem=Custom+Toolbar

如果需要导出 Excel自定义分页器工具栏放入 dialog动态生成工具栏按钮,请继续提问!

http://www.zskr.cn/news/115086.html

相关文章:

  • Shell Sort
  • EmotiVoice语音合成时间戳功能:精确对齐字幕与音频
  • 2025上海装潢公司排行:五大靠谱团队推荐与解析,市场装潢门店优质品牌选购指南 - 品牌推荐师
  • AWS数据迁移实战:如何在不中断业务的情况下完成PB级数据迁移
  • Python中同步MySQL驱动对比
  • 《管理世界》地级市常态化财会监督改革试点DID2012-2024
  • logback日志级别
  • Cursor Rule:AI如何革新代码导航与智能提示
  • AI应用架构师干货:GNN在医疗病历分析中的架构设计
  • MySQL变长字段的庖丁解牛
  • xcchat 是一个基于 Django 和 Django Channels 构建的轻量级在线客服系统。它支持实时聊天、人工/机器人客服切换、访客信息追踪和多站点接入
  • 【大模型微调】11-Prefix Tuning技术:分析Prefix Tuning的工作机制
  • 揭秘大数据领域规范性分析的关键流程
  • 文件上传漏洞检测工具对比:传统VS AI驱动
  • 告别手动测试:MQTT自动化测试脚本开发全攻略
  • 【大模型微调】10-BitFit技术:介绍BitFit的原理及其在微调中的应用
  • EmotiVoice语音合成系统灰度发布AB测试设计模板
  • EmotiVoice语音合成离线运行能力:无网络环境下正常使用
  • windows配置wsl网络代理
  • 3个Budibase企业级应用案例解析
  • 企业级实战:CentOS7+Nginx高可用集群部署指南
  • if you are using weblogic you will need to add ‘org.slf4j‘ to prefer-applica开发效率提升秘籍
  • 新手必看:用AI助手轻松学会J-Flash烧录
  • 2025年网带烘干设备批发厂家权威推荐榜单:网带干燥设备/网带烘干机/带式烘干机源头厂家精选 - 品牌推荐官
  • 【JavaWeb】路径问题_响应重定向和请求转发的路径问题
  • 零基础学Java:从安装到第一个程序的完整指南
  • 用海拥技术1小时打造可运行的产品原型
  • 飞凌嵌入式ElfBoard-目录权限之access
  • Cursor操作效率提升:从手动到自动的进阶技巧
  • 《60天AI学习计划启动 | Day 40: 前端 AI SDK 抽象(aiClient + hooks)》