首页 新闻 赞助 找找看

怎么循环才能使数据呈现如图所示的样子

0
悬赏园豆:10 [已解决问题] 解决于 2014-09-17 17:46

用的技术是:c#,项目环境是webform

分区:是一个表里面包括区域表名,区域ID

游乐设施表:包括:区域ID,区域名称,设施ID,设施名称,开放时间,备注等

问题补充:

其实我最大的疑问,也是最过不去的坎就是,怎么去判断,该设施跟另外一个设施是在同一个分区内,然而让他们显示在一起

福气满满好运连连的主页 福气满满好运连连 | 初学一级 | 园豆:60
提问于:2014-07-22 11:19
< >
分享
最佳答案
0

分组,循环就这么简单

收获园豆:2
Y2zz | 菜鸟二级 |园豆:393 | 2014-07-22 20:54
其他回答(8)
0

目测第一行单独输出,从第二大行开始先计算第一列占的行数,先rowspan一下,然后循环输出后面的每个小行,然后大二大行,,js做法,,应该都差不多吧

收获园豆:1
jieyuefeng | 园豆:201 (菜鸟二级) | 2014-07-22 11:22

 哎

支持(0) 反对(0) 福气满满好运连连 | 园豆:60 (初学一级) | 2014-07-22 11:25
0

数据是什么样子的。

收获园豆:1
undefined | 园豆:898 (小虾三级) | 2014-07-22 11:25

public ActionResult FacOpenCase()
{
ModelViews mv = new ModelViews();
List<FacOpenCaseView> list = new List<FacOpenCaseView>();
var data=ydc.FacOpenCase.Where(ic => ic.IsDelete == false).Select(ic => new { ic.ID, ic.Name, ic.CategoryName,ic.Day,ic.Remark});
foreach (var item in data)
{
FacOpenCaseView fc = new FacOpenCaseView();
fc.CategoryName = item.CategoryName;
fc.Name = item.Name;
fc.Today = DateTime.Now;
fc.Tomorrow = DateTime.Now.AddDays(1);
fc.ID = item.ID;
fc.Remark = item.Remark;
list.Add(fc);
}

mv.fcList = list;
return View();
}

 

我打算在webform里面用mvc

支持(0) 反对(0) 福气满满好运连连 | 园豆:60 (初学一级) | 2014-07-22 11:27

用的是linq to sql,   Modelviews是我在项目里面新建的一个模型类,

namespace We7.CMS.Web.ModelView
{
public class ModelViews
{
public List<FacOpenCaseView> fcList = new List<FacOpenCaseView>();
}
}

支持(0) 反对(0) 福气满满好运连连 | 园豆:60 (初学一级) | 2014-07-22 11:28

@魔女小溪: 你目前的这个结构不行的吧,要做成一个分区对应一组数据的形式。。。。

支持(0) 反对(0) jieyuefeng | 园豆:201 (菜鸟二级) | 2014-07-22 12:01

@魔女小溪: 拿现有的数据再遍历一下,取到分区的对应关系就好了{fenqu1: [data1, data2], fenqu2: [data1, data2]}

支持(0) 反对(0) jieyuefeng | 园豆:201 (菜鸟二级) | 2014-07-22 12:02

@jieyuefeng: 怎么遍历?

支持(0) 反对(0) 福气满满好运连连 | 园豆:60 (初学一级) | 2014-07-22 14:56

@魔女小溪: 那不是list吗,遍历呀

支持(0) 反对(0) jieyuefeng | 园豆:201 (菜鸟二级) | 2014-07-22 14:57
0

Web开发,想问怎么实现效果,其实很简单的,你先别管数据库是怎样的,就你上面这些数据,先用HTML排出来看看,

然后再考虑怎么用代码实现根据数据产生这个HTML代码。

收获园豆:1
爱编程的大叔 | 园豆:30839 (高人七级) | 2014-07-22 11:26

哥,html静态的本来就有了,现在纠结的就是,在webform里面我都不知道要用什么技术去实现这个效果,如果用jquery ajax的话,就要建立webservice,感觉很麻烦(最重要的是,我忘的差不多了),所以我才想着用mvc,但是,就是不知道怎么用循环在界面上显出出来

支持(0) 反对(0) 福气满满好运连连 | 园豆:60 (初学一级) | 2014-07-22 11:34

@魔女小溪: 

不明白你既然用LINQ,还有啥难的。

dim query1= (from c in model

                   select c.分区 distinct).tolist

 

for each item in query1

  dim myRegion as string (or guid)

  dim query2= (from c in model

                         where c.region=myregion).tolist

  

  for each row in query2 

    dim myGame as string=row.Game

    

    .....

  next

next

支持(0) 反对(0) 爱编程的大叔 | 园豆:30839 (高人七级) | 2014-07-22 12:06
0

td的rowspan、colspan用起来就是

至于动态生成,可以用XML(源)+XSLT(模板)

收获园豆:1
志在必得Shaun | 园豆:10 (初学一级) | 2014-07-22 11:27

你这是用js嘛,我不想用js,我就想直接通过c# 的语言来循环

支持(0) 反对(0) 福气满满好运连连 | 园豆:60 (初学一级) | 2014-07-22 11:35

@魔女小溪: 为什么不前后台各做各的

支持(0) 反对(0) 志在必得Shaun | 园豆:10 (初学一级) | 2014-07-22 12:11

@魔女小溪: 后台查询没有确定父子关系的字段或者条件么

支持(0) 反对(0) 志在必得Shaun | 园豆:10 (初学一级) | 2014-07-22 13:02

@魔女小溪: 看了一下,按分区循环得到一个个分区

然后在分区的循环里再查询该分区下的所有设施就可以了

 

不过你还是没明白用XML(源)+XSLT(模板)做这个简单到什么程度

支持(0) 反对(0) 志在必得Shaun | 园豆:10 (初学一级) | 2014-07-22 13:06

@Xuon/Shaun Zhang: 哈哈,哥,你还可爱了,我确实没明白XML(源)+XSLT(模板)这个东东的简单

支持(0) 反对(0) 福气满满好运连连 | 园豆:60 (初学一级) | 2014-07-22 13:13
0

直接在页面上循环输出啊 加上判断了

foreach (FacOpenCaseView item in Model.fcList)
{
   //if判断加html代码  
}

收获园豆:1
单恋 | 园豆:678 (小虾三级) | 2014-07-22 11:52

哥,你说说这个判断的依据看看,我不知道怎么写,呵呵

支持(0) 反对(0) 福气满满好运连连 | 园豆:60 (初学一级) | 2014-07-22 11:57

@魔女小溪: 你这是数据库查询出了数据,想在页面上绑定吧。return View(mv),然后页面上面去

@model ModelViews

下面就用 foreach (FacOpenCaseView item in Model.fcList)
{
   //if判断加html代码 这个判决就是根据你的情况来判断。列入:CategoryName相同 就绑定在一起 使用 
}

支持(0) 反对(0) 单恋 | 园豆:678 (小虾三级) | 2014-07-22 12:40

@魔女小溪: 你要把html表格拆分出来,然后根据条件组合

支持(0) 反对(0) 单恋 | 园豆:678 (小虾三级) | 2014-07-22 12:43
0

本人菜鸟一枚,这做的是什么项目啊, 貌似像游乐园啊

收获园豆:1
骑着蜗牛耍流氓 | 园豆:135 (初学一级) | 2014-07-22 12:18
0

so easy。

收获园豆:1
博客园入口链接 | 园豆:165 (初学一级) | 2014-07-22 13:00

╭(╯^╰)╮,我就是笨呀!

支持(0) 反对(0) 福气满满好运连连 | 园豆:60 (初学一级) | 2014-07-22 13:08
0

先分类了,就可以放在一起了。

收获园豆:1
forhells | 园豆:724 (小虾三级) | 2014-07-22 17:48
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册