如何在 MVC4 中获取返回的 JSON 数据?

Posted

技术标签:

【中文标题】如何在 MVC4 中获取返回的 JSON 数据?【英文标题】:how to get returned JSON data in MVC4? 【发布时间】:2014-07-01 08:17:02 【问题描述】:

我正在向 ajax 调用返回一个简单的数据。但我试图显示警报中返回的显示undefined。如何获取返回的 JSON 数据?

   return Json(new  message = "success", url = Url.Action("Index", "Image") ,
JsonRequestBehavior.AllowGet);

查看

$(document).ready(function() 
                $('#fileupload').fileupload(
                    dataType: 'json',
                    url: '/Admin/Image/UploadFiles',
                    autoUpload: true,
                    done: function (e, data) 
                        alert(data.message); //showing undefined
                        if (data.message== 'success') 
                            alert(data.message);
                            window.location = "www.google.com";
                        
                    ,
                    fail: function(e, data) 
                        console.write(data.errorThrown);
                    
                )

【问题讨论】:

如果警报返回的整个数据会怎样?它也未定义吗? 我认为网址错误 使用您的调试器(例如 Chrome 工具或其他工具)。进行 ajax 调用,在 Network 窗格中查找响应。响应码是 200 吗?看过响应,有没有返回json数据? 这可能对你有帮助:***.com/questions/6278694/url-action-parameters 我刚刚做了alert(data),得到了[object] [object] 【参考方案1】:

您想要 complete 还是 success 属性?我认为您将 xhr 对象的 .done() 与 ajax 设置属性 complete:success: 混淆了。

Done 的第二个参数是状态,而不是数据。

试试这个

 $(document).ready(function() 
            $('#fileupload').fileupload(
                dataType: 'json',
                url: '/Admin/Image/UploadFiles',
                autoUpload: true,
                success: function (data, status, xhr) 
                    alert(data.message); 
                    if (data.message== 'success') 
                        alert(data.message);
                        window.location = "www.google.com";
                    
                
            )

【讨论】:

以上是关于如何在 MVC4 中获取返回的 JSON 数据?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 ASP.net MVC4 上的 webgird 中绑定 JSON 返回结果值

如何在 MVC4 中将 Json 字符串输出为 JsonResult?

spring mvc4使用及json 日期转换解决方案

如何在HTML页面获取ajax返回的json

MVC4如何在父视图单击提交时获取部分视图中的数据

错误请求 MVC 时如何返回 JSON 对象