MVC中处理Json和JS中处理Json对象

事实上,MVC中已经很好的封装了Json,让我们很方便的进行操作,而不像JS中那么复杂了。

MVC中:

 public JsonResult Test()
        {
            JsonResult json = new JsonResult
                                 {
                                     Data = new
                                                {
                                                    Name = "zzl",
                                                    Sex = "male",
                                                }
                                 };
            return Json(json);
        }
 
        public JsonResult TestList()
        {
            List<User> userList = new List<User>
            {
              new User{Name="zzl",Email="bfyxzls@sina.com"},
              new User{Name="zhz",Email="zhanghangzheng@sina.com"},
            };
            JsonResult json = new JsonResult
                                 {
                                     Data = userList
                                 };

return Json(json);

//return Json(json, JsonRequestBehavior.AllowGet);//前台AJAX如果是GET用这句

//什么时候用GET请求呢,当我们直接在浏览器中输入网址时,其实就是一个GET请求

//如果我们直接输入/Home/TestList这个网址,它会提示我们下载这个JSON格式的文档

        }

前台调用:

<script>
    $.ajax({
        url: "/Home/Test",
        dataType: "json",
        cache: false,
        data: null,
        type: "POST",
        success: function (data) {
            alert(data.Data.Name);
        }
    });
 
 
    $.ajax({
        url: "/Home/TestList",
        dataType: "json",
        cache: false,
        data: null,
        type: "POST",
        success: function (data) {
            var msg = "";
            for (var i = 0, length = data.Data.length; i < length; i++) {

msg += "<DiV>Name:" + data.Data[i].Name + ",Email:" +

data.Data[i].Email + "</div>";

            }
            $("#msg2").html(msg);
        }
    });
 
</script>

第二种列表的方法,也可以这样来实现更加简单:

 

  public JsonResult TestList()
        {
            List<User> userList = new List<User>
            {
              new User{Name="zzl",Email="bfyxzls@sina.com"},
              new User{Name="zhz",Email="zhanghangzheng@sina.com"},
              new User{Name="zql",Email="zql1980.happy@sina.com"},
            };

return Json(userList);

//return Json(userList, JsonRequestBehavior.AllowGet);//前台AJAX如果是GET用这句

        }
$.ajax({
        url: "/Home/TestList",
        dataType: "json",
        cache: false,
        data: null,
        type: "POST",
        success: function (data) {
            var msg = "<table border=1><thead><tr><td>Name</td><td>Email</td>
                       </tr></thead><tbody>";
            for (var i = 0, length = data.length; i < length; i++) {
                msg += "<tr><td>" + data[i].Name + "</td><td>" 
                    + data[i].Email + "</td></tr>";
            }
            msg += "</body></table>";
            $("#msg2").html(msg);
        }

});

注意看红色的部分,是否是更简单了呢!哈哈

纯JS进行操作:

     var arr = [{ "name": "zzl", "sex": "男" }, { "name": "lr", "sex": "女"}];
        for (var i = 0; i < arr.length;i++ ) {
            document.write(arr[i].name);
        }
posted @   张占岭  阅读(19622)  评论(7编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示