首页 新闻 搜索 专区 学院

怎样动态生成不同的表格

0
悬赏园豆:20 [已解决问题] 解决于 2010-08-19 13:49

我现在有个js实现的box,我想在大图标下面显示一个3列的表格,在中图标下显示5列的表格,在小图标下显示8列的表格,,我整了一天了没弄出来,只把显示3列的显示出来了 后面的就是显示不了,请各位大侠帮帮忙!

JasonNET的主页 JasonNET | 初学一级 | 园豆:168
提问于:2010-08-17 16:25
< >
分享
最佳答案
0

楼主动态生成没有问题。

楼主好像是用<asp:table>来动态生成表格?这样需要为三个table绑定不同的数据源。

楼主提供的的信息有限,无法深入。

收获园豆:20
邢少 | 专家六级 |园豆:10926 | 2010-08-17 16:53
同时绑定一个数据源不可以吗?
JasonNET | 园豆:168 (初学一级) | 2010-08-17 16:59
我这就要求只有一个数据源,然后里边只是通过不同的列来显示不同的效果
JasonNET | 园豆:168 (初学一级) | 2010-08-17 16:59
@JasonNET:可以。那你不要绑定asp:table了 用datalist吧,它有属性“RepeatColumns”设置一行显示几列。应该能解决你的问题
邢少 | 园豆:10926 (专家六级) | 2010-08-17 18:00
恩 我感觉这个还行 我先调试下
JasonNET | 园豆:168 (初学一级) | 2010-08-18 17:38
@JasonNET:嗯,如果是同样的数据源,只是要不同的显示效果〔一行3列、一行4列..〕肯定是可行的。
邢少 | 园豆:10926 (专家六级) | 2010-08-18 17:44
其他回答(3)
0

你是怎么动态生成的,JS还是后台拼接输出的标签。

Astar | 园豆:40805 (高人七级) | 2010-08-17 16:29
我是通过后台动态生成的,不过如果有js的话 我也可以考虑休整下
支持(0) 反对(0) JasonNET | 园豆:168 (初学一级) | 2010-08-17 16:34
因为我对脚本不是很熟,所以我只会后台的生成
支持(0) 反对(0) JasonNET | 园豆:168 (初学一级) | 2010-08-17 16:34
@JasonNET:假如你生成的td里还有数据库中的数据,那就考虑用后台生成了,JS相对更麻烦一点。你这个效果先用静态的做出来,再用后台拼接输出,不难的。
支持(0) 反对(0) Astar | 园豆:40805 (高人七级) | 2010-08-17 16:38
我生成的td里确实有数据库的数据,不过现在我只是先简单的用静态页面做了一下,就只把3列的显示了,另外两个老是报超出索引的错。
支持(0) 反对(0) JasonNET | 园豆:168 (初学一级) | 2010-08-17 16:46
@JasonNET:静态页面怎么会报索引错误呢,先用HTML把你想要的效果做好,然后再用CS生成出来,填充数据,索引错误是不是读出来的数据长度不够。
支持(0) 反对(0) Astar | 园豆:40805 (高人七级) | 2010-08-17 16:49
string path = this.MapPath("~/photos"); // DirectoryInfo di = new DirectoryInfo(path); // FileInfo[] files = di.GetFiles("*.gif"); // //使用table显示,计算需要多少行 // int rows = (files.Length + 2) / 3; // //生成表格 // for (int i = 0; i < rows; i++) // { // TableRow row = new TableRow(); // this.tb_LargPic.Rows.Add(row); // for (int j = 0; j < rows; j++) // { // TableCell cell = new TableCell(); // cell.CssClass = "cell"; // row.Cells.Add(cell); // } // } // //将图片填充到表格中 // for (int i = 0; i < files.Length; i++) // { // Image image = new Image(); // image.ImageUrl = string.Format("~/photos/{0}", files[i].Name); // image.Width = Unit.Pixel(60); // //计算所在的行和列 // int rowindex = i / 3; // int cellindex = i % 3; // this.tb_LargPic.Rows[rowindex].Cells[cellindex].Controls.Add(image); // }
支持(0) 反对(0) JasonNET | 园豆:168 (初学一级) | 2010-08-17 16:54
这是显示3列的,没有问题,可是后面的显示其他的时候就报错了
支持(0) 反对(0) JasonNET | 园豆:168 (初学一级) | 2010-08-17 16:55
@JasonNET:你数据源table里没有那么多列肯定会报错呀。你可以拼接<table><td>。。。
支持(0) 反对(0) Astar | 园豆:40805 (高人七级) | 2010-08-17 16:58
@Astar:你先用静态页面把table做出来,然后再用后台cs输出拼接的HTML串,这句话你理解吗。静态页效果能做出来,输出的时候只要数据源有数据,就不会错误。
支持(0) 反对(0) Astar | 园豆:40805 (高人七级) | 2010-08-17 17:00
恩 我做做先
支持(0) 反对(0) JasonNET | 园豆:168 (初学一级) | 2010-08-17 17:03
0

先用静态画好,然后对照着那个布局,生成出来。

lightwalker | 园豆:14 (初学一级) | 2010-08-17 16:42
我只在页面上放了一个<asp:table>然后显示 ,只能显示3列的其余显示不了
支持(0) 反对(0) JasonNET | 园豆:168 (初学一级) | 2010-08-17 16:47
哦,你可以考虑用多个table,外面用一个大table,然后里面套三个小table,再各自定义,就比较容易了,不容易搞混。
支持(0) 反对(0) lightwalker | 园豆:14 (初学一级) | 2010-08-17 16:50
恩 我可以先试试
支持(0) 反对(0) JasonNET | 园豆:168 (初学一级) | 2010-08-17 16:55
0

如果不行的话用JQ试试吧,比这个容易理解

张文奇 | 园豆:215 (菜鸟二级) | 2010-08-17 17:05
jQ我是个绝对的菜鸟,不知道怎么做啊
支持(0) 反对(0) JasonNET | 园豆:168 (初学一级) | 2010-08-17 17:13
有什么可以参考的吗
支持(0) 反对(0) JasonNET | 园豆:168 (初学一级) | 2010-08-17 17:14
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册