如何在 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 返回结果值