提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:张莹心|2021-11-03 10:25:15.310|阅读 650 次
概述:在开发 Web 应用程序和界面时,可以将数据网格视为必不可少的组件。这个小部件允许通过以表格的形式显示大量数据集来处理它们。在本文中,我们将展示如何使用 DHTMLX 构建 JavaScript 网格。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
在开发 Web 应用程序和界面时,可以将数据网格视为必不可少的组件。这个小部件允许通过以表格的形式显示大量数据集来处理它们。
DHTMLX Grid 小部件提供了一个全面的功能集来处理大量数据并确保用户友好的数据管理。它包括诸如数据过滤和排序、调整大小、行和列拖放、动态加载以及导出到 Excel 和 CSV 等方便的功能。
在本文中,我们将展示如何使用 DHTMLX 构建 JavaScript 网格。
<!DOCTYPE html> <html> <head> <title>Grid demo</title> // include source files of the DHTMLX Suite library <script type="text/javascript" src="codebase/suite.js"></script> <link rel="stylesheet" href="codebase/suite.css" /> // add dataset for the Grid <script type="text/javascript" src="dataset.js"></script> // add CSS classes with custom settings <style> ... </style> </head>接下来,您应该添加一个容器并为其指定一个 id,例如“grid”:
<body> <div id="grid" class="grid-wrapper"></div>然后您必须使用对象构造函数初始化 Grid 小部件:
<script> // create a data set for the first column (instead you can add your data) var users = [ { name: "Gary Ortiz", ava: "01.png", }, { name: "Albert Williamson", ava: "02.png", }, { name: "Mildred Fuller", ava: "03.png", }, ]; // specify Grid configurations var config = { // configure each Grid column columns: [ ... ], }, // initialize the Grid widget and add specified configurations this.widget = new dhx.Grid("grid", config); var grid = this.widget; </script> </body> </html>
.grid-wrapper { width: 1100px; height: 560px; }将背景颜色应用于网格行:
.my_custom_row { background: #b4dbfe; }设置用户照片的位置:
.demo_grid-user-photo { border-radius: 50%; width: 24px; height: 24px; background: #61c874; text-align: center; line-height: 23px; border: solid 1px #fff; color: white; font-weight: 500; margin-right: -3px; }根据任务的状态指定具有任务的单元格的外观:
.demo_grid-task { height: 24px; max-width: 92px; line-height: 25px; margin: 8px auto 0 auto; border-radius: 100px; text-align: center; } .demo_grid-task__done { background: linear-gradient( 0deg, rgba(10, 177, 105, 0.1), rgba(10, 177, 105, 0.1) ), #ffffff; color: #0ab169; } .demo_grid-task__progress { background: linear-gradient( 0deg, rgba(2, 136, 209, 0.1), rgba(2, 136, 209, 0.1) ), #ffffff; color: #0288d1; } .demo_grid-task__not-started { background: linear-gradient( 0deg, rgba(122, 134, 140, 0.1), rgba(122, 134, 140, 0.1) ), #ffffff; color: rgba(0, 0, 0, 0.7); }
columns: [ { // assign column width width: 150, // set the id of a column id: "access", // define the type of the editor and the content alignment type: "string", // configure the header and footer header: [{ text: "Access", rowspan: 2 }], footer: [{ text: "Total" }], // define the ability to edit data editable: false, // set a template with content for a cell template: function (value) { if (!value) { return; } var photos = value.reduce(function (total, user) { return ( total + (user.ava ? '<img src="./images/' + user.ava + '" class="demo_grid-user-photo"/>' : '<div class="demo_grid-user-photo" style="background:' + user.color + ';">' + user.name.slice(0, 1) + "</div>") ); }, ""); return '<div class="demo_grid-user">' + photos + "</div>"; }, }
{ editorType: "select", options: ["Done", "In Progress", "Not Started"], }此外,您可以应用创建的 CSS 类,这些类将根据所选选项修改 Grid 单元格:
template: function (value) { if (value === "Done") { return ( '<div class="demo_grid-task demo_grid-task__done">' + value + "</div>" ); } if (value === "In Progress") { return ( '<div class="demo_grid-task demo_grid-task__progress">' + value + "</div>" ); } if (value === "Not Started") { return ( '<div class="demo_grid-task demo_grid-task__not-started">' + value + "</div>" ); } if (value === "Active") { return ( '<div class="demo_grid-task demo_grid-task__active">' + value + "</div>" ); } },
id: "project", header: [{ text: "Project" }, { content: "selectFilter" }],
id: "owner", header: [{ text: "Owner" }, { content: "comboFilter" }],指定 inputFilter 属性后,您允许用户使用文本字段过滤数据:
id: "hours", header: [{ text: "Number of hours" }, { content: "inputFilter" }],
this.widget.content["moneySum"] = { calculate: function (data) { return data.reduce(function (sum, c) { return sum + parseFloat(c) || sum + 0; }, 0); }, toHtml: function (column, config) { if (grid.data) { var data = grid.data.map(function (item) { return item[column.id]; }); return this.calculate(data).toLocaleString("en", { style: "currency", currency: "USD", }); } }, };
而且,你必须在列配置中提到这个公式:
id: "cost", footer: [{ content: "moneySum" }],想要购买dhtmlx正版授权,或了解慧都APS系统请点击
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn
雷达图又称蜘蛛图,是一种显示二维多元数据的图形方法。图表上的每个辐条代表一个不同的变量,数据点沿着这些辐条绘制。雷达图尤其适用于比较不同实体在多个标准中的表现。本文将演示如何使用 Spire.XLS for Python 通过 Python 在 Excel 中创建雷达图。
本文将为大家介绍如何使用图表控件SciChart WPF实现WPF应用程序的DPI感知,欢迎下载最新版组件体验!
本文将演示如何使用DevExpress WPF Grid控件实现移动和调整列大小,欢迎下载最新版组件体验!
本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
针对您的解决方案的交互式JavaScript / HTML5甘特图
DHTMLX Spreadsheet高度可定制的JavaScript电子表格组件,可安全、方便地编辑和格式化数据。
DHTMLX DiagramdhtmlxDiagram有很多漂亮的交互式图表,只需几行代码就能生成任何你需要的图表。
DHTMLX Scheduler一个类似于Google日历的强大JavaScript日程安排控件。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@pclwef.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢