加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – jQuery.parseJSON不适用于MVC控制器动作的JsonRe

发布时间:2020-12-16 06:38:18 所属栏目:asp.Net 来源:网络整理
导读:我试图使用jQuery.parse JSON来解析MVC3控制器操作的返回值. 控制器: [HttpPost] public JsonResult LogOn(LogOnModel model,string returnUrl) { .. do stuff .. if (errors.Count() 0) { return Json(new object[] { true,model,errors }); } return Json
我试图使用jQuery.parse JSON来解析MVC3控制器操作的返回值.

控制器:

[HttpPost]
    public JsonResult LogOn(LogOnModel model,string returnUrl)
    {
        .. do stuff ..

        if (errors.Count() < 0)
        {
            return Json(new object[] { true,model,errors });

        }

        return Json(new object[] { false,errors });
    }

jQuery的:

$.ajax({
                url: form.attr('action'),type: "POST",dataType: "json",data: form.serialize(),success: function (data) {
                    var test = jQuery.parseJSON(data);                      
                }   
            });

来自小提琴手的Json结果:

Content-Type: application/json; charset=utf-8

[false,{“UserName”:”1″,”Password”:”2″,”RememberMe”:false},[{“Key”:””,”Errors”:[{“Exception”:null,”ErrorMessage”:”The
user name or password provided is incorrect.”}]}]]

Fiddler可以解析结果:

对jQuery.parseJSON的调用返回null.
我的问题是,如何将json返回值解析为对象?

谢谢!

解决方法

您不需要在成功处理程序中调用parseJSON,因为ajax已经解析了JSON结果(它会自动执行此操作,因为您指定了dataType:’json’)到您的数组中.

但是,我建议返回某种结果对象(无论您是在C#中创建实际的类还是使用匿名类型).

[HttpPost]
    public JsonResult LogOn(LogOnModel model,string returnUrl)
    {
        .. do stuff ..

        if (errors.Count() < 0)
        {
            return Json(new { success=true,errors });

        }

        return Json(new { success=false,errors });
    }

在客户端

$.ajax({
                url: form.attr('action'),success: function (result) {
                    alert(result.success);
                    // also have result.model and result.errors                      
                }   
            });

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读