在Web项目开发过程中,经常会碰到处理表格的维护操作(增加,删除,修改,显示),那么如何来做到通用操作呢?这里提供完整的实现代码,供网友们设计时参考:
列表显示代码:
String tabstyle=StrCharUtil.formatNullStr(request.getParameter("tabstyle"));
if(tabstyle.equals(""))tabstyle="0";
String sql=DBGRIDDESC.SQL_SIMPLEST;
//以下用DBGRID来显示表格
Query q=new Query(sql);
//以下定义DBGRID各个属性字段
//隐藏字段定义
Field hf1=new Field("id1","id1","序号1",true,true,false,0,Field.TYPE_STRING);
Field hf2=new Field("id2","id2","序号2",true,true,false,0,Field.TYPE_STRING);
//显示字段定义
Field vf1=new Field("catename","catename","类别名称",false,true,true,10,Field.TYPE_STRING);
Field vf2=new Field("dt","dt","日期",false,true,true,10,Field.TYPE_DATE);
Field vf3=new Field("num","num","数字",false,true,true,10,Field.TYPE_LONG);
Field vf31=new Field("num1","num1","数字1",false,true,true,10,Field.TYPE_LONG);
Field vf4=new Field("desc1","desc1","描述信息",false,true,true,30,Field.TYPE_STRING);
Field vf5=new Field("color","color","颜色",false,true,true,10,Field.TYPE_COLOR);
//表达式定义
Field ef1=new Field("1+1*2","exp1","表达式1",false,true,true,10,Field.TYPE_LONG);
Field ef2=new Field("3+2","exp2","表达式2",false,true,true,10,Field.TYPE_DATE);
//数据集中加入属性定义
q.addField(new Field[]{hf1,hf2,vf1,vf2,vf3,vf31,vf4,vf5,ef1,ef2});
Dbgrid dg=new Dbgrid(100,"#bdcff7","#d1ddf9","#FFFFFF",false,false,"",q);
if(tabstyle.equals("1"))
dg.setTabStyle(Dbgrid.TABLE_CHECKBOX,new int[]{0},0);
if(tabstyle.equals("2"))
dg.setTabStyle(Dbgrid.TABLE_RADIO,new int[]{0},0);
if(tabstyle.equals("3"))
dg.setTabStyle(Dbgrid.TABLE_LINENUM,new int[]{1},0);
dg.addDefaultColumns();
String res=dg.createGrid();
out.println(res);
如下图所示:
多行在线编辑代码:
String act=StrCharUtil.formatNullStr(request.getParameter("act"));
if(act.equals("")) act="qry";
if(act.equals("save"))
{
Dbgrid mydg=(Dbgrid)request.getSession().getAttribute("loadgrid");
mydg.processSave(request);
response.sendRedirect("lookupEdit.jsp");
}else
{
String sql=DBGRIDDESC.SQL_SIMPLEST;
String lsql=DBGRIDDESC.SQL_LOOKUP;
Query q=new Query(sql);
Query lq=new Query(lsql);
Field ff1=new Field("cate");
Field ff2=new Field("catename");
lq.addField(ff1);lq.addField(ff2);
lq.setName("lq");
LookupField lf1=new LookupField("cate","所在分类","lq","cate","catename");
lf1.setLookupDataSet(lq);
Field hf1=new Field("id1","id1","序号1",true,true,false,0,Field.TYPE_STRING);
Field hf2=new Field("id2","id2","序号2",true,true,false,0,Field.TYPE_STRING);
Field vf1=new Field("num","num","数字",false,false,true,20,Field.TYPE_LONG);
Field vf3=new Field("desc1","desc1","描述",false,false,true,50,Field.TYPE_STRING);
CheckField cf1=new CheckField("bln","bln","布尔值",false,false,true,10,Field.TYPE_BOOLEAN,"1","0");
q.addField(new Field[]{hf1,hf2,cf1,lf1,vf1,vf3});
String usql="update DBGRID_ZB set bln=:bln,cate=:cate,num=:num,desc1=:desc1 where id1=:id1 and id2=:id2";
UpdateSQL us=new UpdateSQL(usql);
q.setUpdateObj(us);
Dbgrid dg=new Dbgrid(100,DBGRIDDESC.HEADCOLOR,DBGRIDDESC.GRIDLINECOLOR,DBGRIDDESC.GRIDCOLOR,q);
dg.addDefaultColumns();
String res=dg.createGrid();
request.getSession().setAttribute("loadgrid",dg);
out.println(res);
效果图:
附件中有可运行的完整代码,附上MYSQL的示例脚本(见附件)
- 大小: 28.6 KB
- 大小: 18 KB
分享到:
相关推荐
### JavaScript 操作 HTML 表格 (Table) 的增删改 在 Web 开发中,JavaScript 经常被用来实现对页面元素的动态操作,其中包括对 HTML 表格 (`<table>`) 的操作。通过 JavaScript,我们可以轻松地实现表格数据的添加...
实验训练 3 数据增删改操作 本实验的主要目的是通过实践操作,掌握 MySQL 中的数据增删改操作,包括单记录插入、批量插入、删除、修改等操作。实验内容包括三个部分:插入数据、删除数据和修改数据。 实验 3-1 ...
【Python web增删查改demo源码】是一个基于Python的Web应用程序示例,它利用了强大的Web框架Django来实现基本的数据操作功能,包括增(添加)、删(删除)、查(查询)和改(修改)。这个demo对于初学者来说是一个很...
用javascript编写显示表格的网页,表格可增加、删除行,且可修改表格内容,可点击表头进行排序,同时可以上移、下移行
web-增删改
MySQL数据库应用实验训练3 数据增删改操作 MySQL数据库应用实验训练3 数据增删改操作是国家开放大学提供的实验训练,旨在让学生熟悉 MySQL 数据库的基本操作,包括数据的增删改操作。实验中,学生将学习使用 Insert...
Angularjs中表格的增删改实例
table表格的增删改功能,鼠标左键双击可编辑,下方按钮增加,右侧删除,表格数据计入localstorage,不会因刷新而消失
Sqlite数据库访问 增删改操作 C#源码,用 vs2017编写, 里面包含 .net 开发所需要的dll文件,版本包含net3.5 4.0 4.5 4.51 4.6, 是目前官网能下载的最全的版本,并且不需要安装额外的vc环境的支持
总的来说,"html+css+js表格动态增删改与xml加载与保存"这个项目涵盖了网页开发中的基本技能,包括动态HTML操作、CSS美化、JavaScript事件处理和XML数据交互。掌握这些技术,能够帮助开发者构建具有强大功能和良好...
简单的动态表格的创建 具有增删改的功能。界面干净整洁。
Java-JDBC【之】数据类型、封装JDBCUtil、封装通用增删改、ResultSet与ResultSetMetaData、查询结果集映射Map与ListMap 1.数据类型 2.封装通用增删改 2.1.封装JDBCUtil 2.2.封装Dao通用增删改 2.3.测试 3.ResultSet...
在本实验训练中,主要涉及的是关系型数据库管理系统MySQL中的数据操作,包括数据的增加(Insert)、删除(Delete)和修改(Update),这些都是数据库管理的基础且重要的操作。实验旨在加深对这些SQL语句的理解和应用...
"linp三层增删改源码"指的是基于这种架构的源代码,用于处理数据库中的增、删、改操作。 【描述】"linp三层增删改源码linp三层增删改源码linp三层增删改源码" 描述中反复提及"linp三层增删改源码",暗示该源代码...
ZTree是一款广泛应用于Web开发中的JavaScript树形控件,它具有丰富...总之,ZTree通过右键菜单实现了对树形数据的增删改功能,使得Web应用中的树形操作更加便捷,同时其高度定制化的特点为开发者提供了广阔的设计空间。
本教程将深入探讨如何在C#窗体模式下使用封装的方式对表格内容进行增删改操作,这对于初学者来说是一份很好的学习资源。教程中包含了一个数据库文件和详细的使用说明,确保你可以顺利地理解和应用这些概念。 首先,...