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

jQuery EasyUI 数据网格 - 创建自定义视图

下面直接给你最实用、最常见的自定义视图(custom view)方法,jQuery EasyUI datagrid 支持通过扩展默认 view 来实现超级灵活的布局,比如经典的卡片视图(Card View)、列表视图、图文混排视图等,复制粘贴就能用,领导最爱的“手机端友好、商品展示卡片”效果全都有!

方法1:最经典 - 创建卡片视图(Card View)(官方推荐,超级好看!)
每行显示为一张卡片,带图片 + 字段标签,适合商品列表、人员卡片等。

<tableid="dg"class="easyui-datagrid"title="自定义卡片视图"style="width:800px;height:500px"data-options="url:'your_data.json', fitColumns:true, singleSelect:true, pagination:true, view: cardview"><thead><tr><thdata-options="field:'itemid',width:80">商品ID</th><thdata-options="field:'name',width:150">商品名称</th><thdata-options="field:'price',width:80,align:'right'">价格</th><thdata-options="field:'attr',width:200">属性</th><thdata-options="field:'status',width:60">状态</th></tr></thead></table><script>// 定义自定义卡片视图(扩展默认view)varcardview=$.extend({},$.fn.datagrid.defaults.view,{renderRow:function(target,fields,frozen,rowIndex,rowData){varcc=[];cc.push('<td colspan='+fields.length+' style="padding:10px 5px;border:0;">');if(!frozen){// 自定义卡片内容(这里假设有图片字段,或用itemid生成图片)varimg='images/default.jpg';// 默认图片,或根据rowData动态生成if(rowData.itemid){varparts=rowData.itemid.split('-');img='images/product'+parts[1]+'.jpg';// 示例图片路径}cc.push('<div style="float:left;width:150px;height:180px;background:#fafafa;border:1px solid #ccc;padding:10px;text-align:center;">');cc.push('<img src="'+img+'" style="width:140px;height:140px;">');cc.push('<div style="margin-top:10px;font-weight:bold;">'+rowData.name+'</div>');cc.push('</div>');cc.push('<div style="float:left;margin-left:20px;">');for(vari=0;i<fields.length;i++){varfield=fields[i];varcopts=$(target).datagrid('getColumnOption',field);if(field!='itemid'){// 跳过图片字段cc.push('<p><span style="font-weight:bold;">'+copts.title+':</span> '+(rowData[field]||'')+'</p>');}}cc.push('</div>');cc.push('<div style="clear:both;"></div>');}cc.push('</td>');returncc.join('');}});</script>

效果:每行变成一张精美卡片,左边图片,右边字段标签列表,响应式超好看,分页排序全支持!

方法2:简单列表视图(List View)(适合移动端或简洁展示)
每行垂直显示字段,像手机列表一样。

varlistview=$.extend({},$.fn.datagrid.defaults.view,{renderRow:function(target,fields,frozen,rowIndex,rowData){varcc=[];cc.push('<td colspan='+fields.length+' style="padding:15px;border-bottom:1px solid #eee;">');if(!frozen){cc.push('<div style="font-size:16px;font-weight:bold;margin-bottom:10px;">'+rowData.name+'</div>');cc.push('<div style="line-height:24px;">');for(vari=0;i<fields.length;i++){varfield=fields[i];varcopts=$(target).datagrid('getColumnOption',field);if(field!='name'){cc.push('<span style="color:#666;">'+copts.title+':</span><span>'+(rowData[field]||'')+'</span> ');}}cc.push('</div>');}cc.push('</td>');returncc.join('');}});// 使用时:view: listview

方法3:结合 detailview 的自定义展开视图(如果想点击展开详情)
先引入官方 detailview.js,然后自定义 detailFormatter。

<scriptsrc="jquery.easyui.min.js"></script><scriptsrc="datagrid-detailview.js"></script><!-- 官方扩展 --><tableid="dg"class="easyui-datagrid"data-options="view:detailview, detailFormatter:myDetailFormatter">...</table><script>functionmyDetailFormatter(index,row){return'<div style="padding:20px;"><h3>'+row.name+' 的详细信息</h3><p>自定义内容:这里可以放表格、图片、表单等...</p></div>';}</script>

你现在直接复制方法1的卡片视图代码到你的页面,刷新一下就能看到超级专业的卡片效果了!
结合之前的复选框 + 分页 + 行内编辑 + 合并单元格,你的 datagrid 已经可以变身现代卡片列表了。

想要我给你一个完整的HTML示例(带远程数据 + 卡片视图 + 图片 + 分页 + 排序)?
或者你告诉我你想实现什么视图(比如“人员名片卡”“订单列表卡”“带操作按钮的卡片”),我2分钟发你完整自定义代码,复制就能跑!

快说说你现在的需求,我手把手帮你搞定,5分钟内看到超级酷的自定义视图效果!

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

相关文章:

  • jQuery EasyUI 数据网格 - 创建属性网格
  • PHP国密SM3加密技术:企业级数据安全实战指南
  • Windows系统OneDrive完全卸载终极指南:释放宝贵系统资源的必备方案
  • 3步搞定B站高品质音频下载:从入门到精通
  • AI帮你理解chmod权限:-r与-r的区别解析
  • 快速验证:用快马1小时搭建el-popover原型系统
  • 代码重构艺术:从混乱到优雅的实战指南
  • Stable Diffusion WebUI Forge生成模型评估指标完全指南
  • 比手动初始化快10倍:PostConstruct优化技巧
  • MaterialDesignInXamlToolkit:30分钟让你的WPF应用焕然一新
  • ESP32 HWCDC大数据传输终极指南:3步解决USB串口卡顿问题
  • IDR:Delphi程序逆向工程的终极工具指南
  • Obsidian导入工具:从多平台轻松迁移笔记的完整指南
  • MosDNS突破性DNS转发器:高效能部署与智能配置实战指南
  • 为什么选择S7NetPlus:工业自动化领域的跨平台PLC通信框架解决方案
  • 1小时验证创意:用Watt Toolkit打造产品原型
  • 如何5分钟搞定数字档案管理:Papermerge完整部署教程
  • 虚拟线程在高并发Web服务中的5个实战案例
  • 3分钟搞定JDK11:高效下载安装全攻略
  • 效率对比:手写vs快马生成el-popover代码
  • 电脑小白必看:轻松解决文件找不到的简单方法
  • UE5卡通渲染革命:MooaToon实现电影级三渲二效果全解析
  • 如何用Poor Man‘s T-SQL Formatter实现SQL代码规范化管理终极指南
  • Kotaemon支持SSE事件流吗?实时交互体验优化
  • Linux性能分析入门:vmstat命令图解指南
  • Realistic Vision V2.0终极指南:从新手到专家的完整解决方案
  • springboot小徐影城管理系统(11512)
  • AI数字化修理管理系统开发:让维修效率与管控精度双提升
  • 一键彻底清除OneDrive:Windows系统优化必备工具
  • MuJoCo无头渲染终极指南:云端物理仿真可视化完整解决方案