事实上,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);
        }

【转】MVC中处理Json和JS中处理Json对象的更多相关文章

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

    MVC中处理Json和JS中处理Json对象 ASP.NET MVC 很好的封装了Json,本文介绍MVC中处理Json和JS中处理Json对象,并提供详细的示例代码供参考. MVC中已经很好的封装了 ...

  2. JSON在JS中的应用

    一. JSON在JS中的应用: 首先解释下JSON对象与普通js对象字面量定义时格式的区别: Js对象字面量定义格式: var person = { name:"Wede", ag ...

  3. java:JavaScript3(innerHTML,post和get,单选框,多选框,下拉列表值得获取,JS中的数组,JS中的正则)

    1.innerHTML用户登录验证: <!DOCTYPE> <html> <head> <meta charset="UTF-8"> ...

  4. JavaScript 基础——使用js的三种方式,js中的变量,js中的输出语句,js中的运算符;js中的分支结构

    JavaScript 1.是什么:基于浏览器 基于(面向)对象 事件驱动 脚本语言 2.作用:表单验证,减轻服务器压力 添加野面动画效果 动态更改页面内容 Ajax网络请求 () 3.组成部分:ECM ...

  5. JS中的运算符和JS中的分支结构

    JS中的运算符 1.算术运算(单目运算符) + .-.*. /. %取余.++自增 .--自减 +:两种作用,链接字符串/加法运算.当+两边全为数字时,进行加法运算:当+两边有任意一边为字符串时,起链 ...

  6. bug日记之---------js中调用另一个js中的有ajax的方法, 返回值为undefind

    今天做一个OCR授权的需求, 需要开发一个OCR弹框, 让用户选择是否授权给第三方识别公司(旷世科技)保存和识别用户个人信息, 照片等. 其中用到了在一个js的方法中调用另外一个js的方法, 其中有一 ...

  7. 转:el表达式获取map对象的内容 & js中使用el表达式 & js 中使用jstl 实现 session.removeattribute

    原文链接: ①EL表达式取Map,List值的总结 ②在jsp中使用el表达式通过键获得后台的一个map<Long,String>的值 ③在javascript中使用el表达式(有图有真相 ...

  8. vue cli 中关于vue.config.js中chainWebpack的配置

    Vue CLI  的官方文档上写:调整webpack配置最简单的方式就是在vue.config.js中的configureWebpack选项提供一个对象. Vue CLI 内部的 webpack 配置 ...

  9. JS高级面试题思路(装箱和拆箱、栈和堆、js中sort()方法、.js中Date对象中的getMounth() 需要注意的、开发中编码和解码使用场景有哪些)

    1.装箱和拆箱: 装箱:把基本数据类型转化为对应的引用数据类型的操作: var num = 123 // num var objNum = new Num(123) // object console ...

随机推荐

  1. 如何保证ArrayList线程安全

    一.继承Arraylist,然后重写或按需求编写自己的方法,这些方法要写成synchronized,在这些synchronized的方法中调用ArrayList的方法.   二:使用Collectio ...

  2. java多线程系类:JUC线程池:05之线程池原理(四)(转)

    概要 本章介绍线程池的拒绝策略.内容包括:拒绝策略介绍拒绝策略对比和示例 转载请注明出处:http://www.cnblogs.com/skywang12345/p/3512947.html 拒绝策略 ...

  3. js实现弹框及自动关闭

    <SCRIPT LANGUAGE="javascript"> < !-- window.open (''page.html'',''newwindow'',''h ...

  4. Spring Boot 添加Shiro支持

    前言: Shiro是一个权限.会话管理的开源Java安全框架:Spring Boot集成Shiro后可以方便的使用Session: 工程概述: (工程结构图) 一.建立Spring Boot工程 参照 ...

  5. SQL联合查询(内联、左联、右联、全联)的语法(转)

    最近在做一个比较复杂的业务,涉及的表较多,于是在网上找了一些sql联合查询的例子进行研究使用. 概述: 联合查询效率较高,举例子来说明联合查询:内联inner join .左联left outer j ...

  6. javascript中怎么判断对象{}为空

    有时候通过AJAX方法调用返回的是一个JSON对象,而这个对象可能在开发过程中会没有数据是一个空{}. JavaScript判断object/json 是否为空,可以使用jQuery的isEmptyO ...

  7. angular作用域分析

    angualr作用域 Scope 控制器作用域的继承特性Ⅰ 绑定的数据是变量 单向隔离(兄弟之间互不影响,父子之间单向继承) 父级控制器的数据绑定会影响到子级控制器 前提是子控制器内没有绑定数据 单向 ...

  8. Scales小谈gulp

     gulp是一个自动化构建工具,开发者可以使用它在项目开发过程中自动执行常见任务. 外网:http://gulpjs.com/ 中文官网:http://www.gulpjs.com.cn/ 易于使用 ...

  9. 项目中CKEditor修改宽度为自适应

    项目中用到CKEditor,在config.js中直接定义config.width使得宽度无法自适应,尝试了好多次后发现了一种方法: 放弃在config.js中配置宽度 在页面检查元素,找到id为ck ...

  10. 项目中遇到的关于兄弟controller之间传值的问题解决

    层级关系如下 <ons-page ng-controller="tabbarIndexController"> <ons-tabbar position=&quo ...