Jquery 读取Json数据
我有一个MVC操作方法,从中返回数据,如下图所示 作用方法Jquery 读取Json数据,jquery,json,asp.net-mvc-3,Jquery,Json,Asp.net Mvc 3,我有一个MVC操作方法,从中返回数据,如下图所示 作用方法 [HttpPost] public JsonResult LegalCheck(string jsonPackage) { var serializer = new JavaScriptSerializer(); var comments = serializer.Deserialize<Dictionary<string, string>>(jsonPackage.Substring(jsonP
[HttpPost]
public JsonResult LegalCheck(string jsonPackage)
{
var serializer = new JavaScriptSerializer();
var comments = serializer.Deserialize<Dictionary<string, string>>(jsonPackage.Substring(jsonPackage.IndexOf('{'), jsonPackage.LastIndexOf('}')));
var results = MyService.GetViolations(comments, CookieManager.ClientId);
return Json(results);
}
]}
法律ia等级如下所示
results
Count = 2
[0]: {[CommentTextarea_1181_1183, Mynamespace.Services.Legal[]]}
[1]: {[CommentTextarea_1181_1184, Mynamespace.Services.Legal[]]}
[Serializable]
public class Legal
{
public string Phrase { get; set; }
public int StartIndex { get; set; }
}
谢谢看来
MyService.GetViolations
方法返回了一个字典
。ASP.NET MVC 3用于序列化JSON响应的JavaScriptSerializer
在序列化字典时不会生成javascript数组。它生成一个javascript对象。因此不能循环,因为此对象中的索引不是基于0的整数
因此,为了循环,您可以枚举为对象定义的所有属性:
$.ajax({
url: '@Url.Action("LegalCheck")',
type: 'POST',
success: function (result) {
for (var prop in result) {
if (result.hasOwnProperty(prop)) {
// prop is the key and result[prop] is the legals array
var legals = result[prop];
alert('the key is ' + prop + ' and the value is ' + legals[0].Phrase);
}
}
}
});
你能发布json返回的样子吗?结果(上图)是返回的json。你想让我发布动作方法中内置的数据吗?是的,我只是看不出图像中是什么样子。我还希望看到它是如何构造的。类似于文本JSON字符串。