以前看到动态生成table的代码时,认为特别复杂,看到代码就不想看,认为这个用不到,而且还抱着一种难的心理.
不管则着,还是逃不过,躲避不是好的方法,这次就用到了动态生成表的要求,不学不行呀,不然页面达不到效果.
下面是我自己实现的一个实例
首先是在前台页面拖出一个html的table
, 我们可以设定表头,也可不设定表头
这里我就自己设定表头了
- <html>
- <body>
- <formid="form1"runat="server">
- <tableidtableid="tblAutoTable"class="data-tablehistory"runat="server"style="width:68%;margin-bottom:0px;height:40px;margin:0;">
- <thead>
- <tr>
- <thalignthalign="left">文件名</th>
- <thalign="left">文件大小
- </th>
- <thalignthalign="left"><inputtype="checkbox"id="checkAll"name="checkAll"/>
- </th>
- </tr>
- </thead>
- <tbody>
- </tbody>
- </table>
- </form>
- </body>
- </html>
后台怎么设定,首先是获取查询到的数据(我是用Datatable获取查询到的数据的).
下面是实例代码
- #region查询文件
- privatevoidQueryFile()
- {
- MongoDatabasedb=getConn();
- MongoGridFSSettingsfsSetting=newMongoGridFSSettings(){Root=fileTable};
- MongoGridFSfs=newMongoGridFS(db,fsSetting);
- MongoCursor<MongoGridFSFileInfo>docList=fs.FindAll();
- HtmlTableRowtrFirst=newHtmlTableRow();
- HtmlTableCelltcTitle=newHtmlTableCell();
- tcTitle.InnerText="文件名";
- trFirst.Controls.Add(tcTitle);
- foreach(MongoGridFSFileInfodocindocList)
- {
- UInt32length=Convert.ToUInt32(doc.Length);
- stringsize=null;
- if(length>1024*1024)
- size=((double)length/1024/1024).ToString("F2")+"MB";
- elseif(length>1024)
- size=((double)length/1024).ToString("F2")+"KB";
- else
- size=length.ToString()+"B";
- HtmlTableRowtr=newHtmlTableRow();
- HtmlTableCelltcCol=newHtmlTableCell();
- stringname=doc.Name;
- tcCol.Width="300";
- tcCol.InnerHtml="<ahref='/Teacher/mongodb/FileManage.ashx?action=DOWNLOAD&value="+name+"'target='_blank'>"+name+"</a>";
- tr.Controls.Add(tcCol);
- HtmlTableCelltc=newHtmlTableCell();
- TextBoxtb=newTextBox();
- tb.Width=120;
- tb.Text=size;
- tc.Controls.Add(tb);
- tr.Controls.Add(tc);
- tblAutoTable.Controls.Add(tr);
- }
- }
- #endregion
实例效果图如下
从代码的实例中可以看出,创建表格就是实例化对象,然后给对象赋值,它和先前的对象如出一辙的,并没有想象的那么难。
对比:
对于一个已经创建好的Dtatable,如何给Datatable循环添加行和列,于此类似,大家可以对比研究。
分享到:
相关推荐
数据展示时候,经常从后台传入大小不等的矩阵。这里给出了根据不同矩阵大小,通过jquery的html()和append()方法动态生成html表格的实例。
本文实例介绍了JS实现动态生成表格并向后端提交表格数据的相关代码,分享给大家供大家参考,具体内容如下 先来看一下需求:在web页面上动态的生成表格,并可以对表格中的数据进行编辑,然后把表格中的数据提交至后端...
2、下面表格对应的月份跟类型是动态的,从后台数据库获取,当查询条件只展示7个月的数据时,下面图表以及表格相应只展示7个月的数据。3、表格头实现斜线/斜杠。4、监听左侧菜单栏是否展开,解决菜单展开关闭时图表...
后台数据写成<root><row 姓名='张三' 年龄='22'/> 前台HTML自动显示成表格了...并且无论表头有多少标题都可以扩展,直接导入进eclipse就能用.....
vue编写,基于elementUI实现的商品库存表格,添加属性和规格,自动生成对应表格
javascript动态添加表格数据行 在很多web应用中,我们会遇到很多需要动态插入多行纪录的地方。比如,在人才网站上,我们填写简历的时候,我们要填写我们的项目经验,我们可以根据自己的实际情况动态的添加条数,这种...
本文实例讲述了Asp.Net实现无限分类生成表格的方法。分享给大家供大家参考,具体如下: 数据结构 monitor_group monitor_grp_id monitor_grp_name parent_id level childCount orderby [int,自动递增] ...
网页table标签生成excel表格,静态页面生成excel仅仅需要引入table2excel即可,无需后台代码
// 绑定高度并获得当前隐藏keys(获得当前事件的下一个元素) /** * 显示状态和模块 ...* 动态创建层并添加显示内容 改分页 */ /** * DWR 提交 */ /** * 分页函数 */ /** * 验证 */
通过JS来写动态的表格(有多少组数据,就自动创建多少行表格) 为学习和演示,采用固定的数据,不涉及调用后台数据 代码实现: HTML内容: <table cellspacing=0> 姓名 科目 成绩 操作 <tbody></tbody...
同时分为两个文件serverImage和clientImage,其中包含项目源码,一些配置文件,以及后端需要处理的两个csv文件,同时包含生成docker镜像的Dockerfile,可直接在serverImage和clientImage目录先直接build客户端镜像和...
具体看我的博文:...如果table的内容是通过ajax,从后台获取到数据后提交json给前端再循环拼接table表格,再导出到Excel后发现只有表头,没有数据,数据部分是空白一片....这可咋整??
动态表格生成数据管理系统主要适用于从事各种信息收集整理汇总的工作岗位,特别是办公室人员。它没有固定的表格模式,完全可以结合当前工作需要在线制定表格并指定数据填报者等,用心用过就知道它的好处了!这是结合...
ecside是一个强大的表格处理工具,能把后台传过来的list完美的展现在我们面前。这个文件里面就它的一个用例,有兴趣的朋友可以看看
功能:ajax获取后台返回数据给table动态添加tr/td html部分: <table> <tbody></tbody> </table> ajax部分: var year = $('#year').val();//下拉框数据 var province= $('#province').val();//下拉框数据 $('...
vue+elementUI实现列可变的动态表格.基于我之前发布的《vue+element实现动态表格:根据后台返回的属性名和字段动态生成表头可变表格》一文,我已整理好一个小demo,可直接下载使用
_id:生成的表格的id pageSize:一页的大小 parent:父节点,用$("")选出来的数组,选一个唯一的才能保证安全 headContent:表格首部行,传入一个数组 operationEnable:是否需要有按钮一列 buttonTemplate:按钮模版,模版由...
如果后台不提供导出excel表格的接口,那么我们js有自己的方法可以支持。操作简单,可封装。完全抛弃后台,自己展示,自己导出,非常实用,资源内包含demo,一目了然。(原生js浏览器全兼容)