使用jqGrid计算数据行列总计
需积分: 9 99 浏览量
更新于2024-08-12
收藏 5KB TXT 举报
"jqGrid 是一个用于创建交互式表格的 jQuery 插件,它支持数据的行和列总计功能。本文将详细介绍如何在 jqGrid 中实现数据的行列合计。"
在 jqGrid 中实现数据的行列合计,主要是通过操作网格内的数据和列模型来完成的。以下是一些关键知识点:
1. jqGrid 数据获取与操作:
- `$(gridview1).getDataIDs()`:获取 jqGrid 中所有行的 ID。
- `$(gridview1).jqGrid('getRowData')`:获取 jqGrid 的行数据,返回一个对象数组,每个对象代表一行数据。
- `$(gridview1).jqGrid('getGridParam', 'colNames')` 和 `$(gridview1).jqGrid('getGridParam', 'colModel')`:分别获取列名和列模型,其中列模型包含了列的配置信息,如名称、宽度等。
2. 行列总计计算:
- 使用两个嵌套的 for 循环,第一个循环遍历行,第二个循环遍历列。
- 对于行总计,从第二列开始(通常第一列是复选框或序号,不参与计算),累加每行对应列的数据,然后使用 `toFixed(2)` 来保留两位小数,并使用 `$(gridview1).setCell(ids[i],"ϼ",rowSum.toFixed(2));` 更新行总计单元格的值。
- 对于列总计,同样从第二列开始,累加每一列所有行的数据,然后更新列总计单元格的值。
3. 事件处理:
- `function CellSave(rowid, cellname, value, iRow, iCol, e)`:这是一个单元格保存事件的回调函数。当用户编辑并保存单元格后,调用 `jqGridSum("#gridview1");` 重新计算行列总计,确保数据更新后合计正确。
4. 其他相关操作:
- `$("#gridview1").jqGrid("saveCell", iRow, iCol)`:保存当前编辑的单元格。
- `var modulename = "Ŀʱͳ(" + $("#WorkDate").val() + ")";`:根据日期输入创建模块名称,可能用于表格标题或其他用途。
- `$.ajaxSettings.async = false;`:设置异步请求为同步,确保数据加载完成后才进行后续操作。
- `$.ajax` 请求数据,URL 包含查询参数,可能是从服务器获取工作小时数据。
通过以上步骤,我们可以为 jqGrid 的每一行计算总和,并在最后一列显示,同时也可以对某一列的所有行进行总计,并在该列的底部显示。这种方法允许用户查看和理解大量数据的总体趋势,提高数据的可读性和分析能力。在实际应用中,还可以根据需求扩展功能,例如添加条件过滤、动态计算等。
2018-01-16 上传
2020-09-04 上传
2024-12-06 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
2023-07-10 上传
zhanshuizhu
- 粉丝: 4
- 资源: 31
最新资源
- Canteen-Automation-App:一个食堂自动化应用程序,用于使手动食堂管理系统自动化
- zxing-cpp:ZXing的C ++端口
- Windows server2008R2 补丁kb4474419-v3-x64
- CognitiveRocket:此存储库主要用于Bot,Power Platform,Dynamics 365,Cognitive Services和ML.NET的研发。
- pouchdb-all-dbs:PouchDB的allDbs()插件
- FromJson
- Dahouet-Repository
- Cyclist
- endlessArrayPromise
- GEO82_5_HE
- workberch-tolopogy:由 Taverna Workbench 上的工作流文件创建的动态 Apache Storm 拓扑
- Surface-Crack-Detection-CNN:使用CNN对Kaggle上可用的图像数据进行表面裂纹检测。 该存储库将在Streamlit中同时具有“模型实现”和“ Web应用程序”,用于检测裂缝
- AppiumTest
- COMP397-W2021-Lesson8a
- 使用TensorFlow.js进行AI聊天机器人:训练Trivia Expert AI
- bdmap