首页 新闻 搜索 专区 学院

ViewBag.ArrayList里面存的集合怎么在页面中的JS进行遍历使用

0
[已解决问题] 解决于 2016-09-07 17:29
  ArrayList ArrayX = new ArrayList();
 using (var context = new BaseDb())
            {
                List<businessManageModel> model = context.businessManageModel.Where(u => u.IsDel == 0).ToList();               
                foreach(businessManageModel item in model){
                    ArrayX.Add( item.X.ToString());
                }
            }
 ViewBag.ArrayX = ArrayX;
NeXT、的主页 NeXT、 | 菜鸟二级 | 园豆:295
提问于:2016-09-07 16:26
< >
分享
最佳答案
0

转成json,顺便说一下,能用List<T>就用,用arrayList还得转一次,在C#里还好说,js你怎么办?

var temp = '@Html.Raw(projects.ToJson())';
    var projects;
    if (typeof (JSON) == 'undefined') {
        projects = eval("(" + temp + ")");
    }
    else {
        projects = JSON.parse(temp);
    }

其中那个projects.ToJson()是我们自己写的转成json的扩展,你可以自己写转成json字符串的代码

奖励园豆:5
顾晓北 | 专家六级 |园豆:10794 | 2016-09-07 16:46

晓北大神, 这一段是写在后台进行序列化的么

NeXT、 | 园豆:295 (菜鸟二级) | 2016-09-07 16:54

@NeXT1995: 这是js。。@Html.Raw的意思是输出HTML字符串,不会HTML编码,就是把你的json字符串原样输出,发送到客户端的时候,就可以把json字符串用js转换为js的对象

顾晓北 | 园豆:10794 (专家六级) | 2016-09-07 16:57

@NeXT1995: 楼上的这个var json = new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(obj);

就是代替我给你的代码里面的projects.ToJson()部分

顾晓北 | 园豆:10794 (专家六级) | 2016-09-07 16:58

@顾晓北: 嗯嗯,谢谢你,终于可以啦

NeXT、 | 园豆:295 (菜鸟二级) | 2016-09-07 17:28
其他回答(2)
0

序列化成json字符串.输出到页面上.定义一个js对象接收.

吴瑞祥 | 园豆:29287 (高人七级) | 2016-09-07 16:29

 那个json我不知道要怎么用,能写一下给我参考一下吗,谢谢您

支持(0) 反对(0) NeXT、 | 园豆:295 (菜鸟二级) | 2016-09-07 16:33

跪求大神教我,将ArrayList进行序列化

支持(0) 反对(0) NeXT、 | 园豆:295 (菜鸟二级) | 2016-09-07 16:41
0

var json = new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(obj);

Eric.luo | 园豆:853 (小虾三级) | 2016-09-07 16:45

是在View进行序列化吗?为什么我在页面做还是不行

支持(0) 反对(0) NeXT、 | 园豆:295 (菜鸟二级) | 2016-09-07 16:52

@NeXT1995: 

1  using (var context = new BaseDb())
2             {
3                var model = context.businessManageModel.Where(u => u.IsDel == 0).ToList();               
4                ViewBag.ArrayX = new System.Web.Script.Serialization.JavaScriptSerializer().Serialize(model );
5             }
支持(0) 反对(0) Eric.luo | 园豆:853 (小虾三级) | 2016-09-07 17:00

@BERWOLF: 页面中就直接

var list = @ViewBag.ArrayX;
for...
{

      .....  
}
支持(0) 反对(0) Eric.luo | 园豆:853 (小虾三级) | 2016-09-07 17:02

@BERWOLF:好的,谢谢你

支持(0) 反对(0) NeXT、 | 园豆:295 (菜鸟二级) | 2016-09-07 17:29
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册