zoukankan      html  css  js  c++  java
  • ASP.NET MVC 4 中的JSON数据交互

    前台Ajax请求很多时候需要从后台获取JSON格式数据,一般有以下方式:

    拼接字符串

    return Content("{"id":"1","name":"A"}");

    为了严格符合Json数据格式,对双引号进行了转义。

    使用JavaScriptSerialize.Serialize()方法将对象序列化为JSON格式的字符串 MSDN

    例如我们有一个匿名对象:

    var tempObj=new 
    {
        id=1,
        name="A"
    }

    通过Serialize()方法,返回Json字符串:

    string jsonData=new JavaScriptSerializer().Serialize(tempObj);
    return Content(jsonData);

    返回JsonResult类型 MSDN

    ASP.NET MVC 中,可以直接返回序列化的JSON对象:

    public JsonResult Index()
    {
        var tempObj=new 
        {
            id=1,
            name="A"
        }
        
        return Json(tempObj, JsonRequestBehavior.AllowGet);  
    }

    需要设置参数‘JsonRequestBehavior.AllowGet’,允许GET请求。

    前台处理返回的数据时,对于1,2种方法,需要使用JQuery提供的parseJSON方法,将返回的字符串转换为JSON对象:

    $.ajax({
        url:'/home/index',
        success:function(data){
            var result=$.parseJSON(data);
            //...
        }
    });

     对于第三种方法,直接作为JSON对象使用即可。

  • 相关阅读:
    this:从JavaScript执行上下文视角讲this
    作用域链和闭包:代码中出现相同的变量,JavaScript引擎如何选择
    调用栈:为什么JavaScript代码会出现栈溢出
    变量提升:JavaScript代码是按顺序执行的吗
    uniapp
    uniapp
    uniapp
    uniapp
    js
    uniapp
  • 原文地址:https://www.cnblogs.com/luotaoyeah/p/3325264.html
Copyright © 2011-2022 走看看