Javascript 无法循环浏览JSON数据

Javascript 无法循环浏览JSON数据,javascript,jquery,json,Javascript,Jquery,Json,我有以下Json数据(请参见图片)。我试图使用下面的jQuery代码提取数据,但它不起作用。请帮忙 var items = []; $.each($.parseJSON(OnePointData), function (key, val) { items.push("<li id='" + key + "'>" + val + "</li>"); $.each(key, function(key2, val2) { items.push("

我有以下Json数据(请参见图片)。我试图使用下面的jQuery代码提取数据,但它不起作用。请帮忙

var items = [];
$.each($.parseJSON(OnePointData), function (key, val) {
    items.push("<li id='" + key + "'>" + val + "</li>");
    $.each(key, function(key2, val2) {
        items.push("<li id='" + key2 + "'>" + val2 + "</li>");
    });
});
console.log(items);

正如@Barmar所说的那样,
$.getJSON
自动调用
$.parseJSON
。因此,请尝试删除
$。parseJSON
函数:

$.getJSON("/Home/GetOnePointData", { Address: ui.item.value}, function(OnePointData) {
    console.log(OnePointData);
    var items = [];
    var items2 = [];
    $.each(OnePointData, function (key, val) {
        items.push("<li id='" + key + "'>" + val + "</li>");
        $.each(val, function (key2, val2) {
           items2.push("<li id='" + key2 + "'>" + val2 + "</li>");
        });
    });
    console.log(items2);
});
$.getJSON(“/Home/GetOnePointData”,{Address:ui.item.value},函数(OnePointData){
console.log(OnePointData);
var项目=[];
var items2=[];
$.each(OnePointData,function(key,val){
items.push(“
  • ”+val+“
  • ”); $.each(val,function)(键2,val2){ items2.push(“
  • “+val2+”
  • ”); }); }); console.log(items2); });
    这是一个使用您发布的数据结构的示例,它是有效的

    var OnePointData = {"GetQuestions":{"s1":"Q1,Q2","s2":"Q1,Q2,Q3","s3":"Q1,Q2,Q4","s4":"Q1,Q2,Q4,Q6"},
                        "GetQuestions2":{"s1":"Q1,Q2","s2":"Q1,Q2,Q3","s3":"Q1,Q2,Q4","s4":"Q1,Q2,Q4,Q6"}};
    var items = [];
    var items2 = [];
    $.each(OnePointData, function (key, val) {
        items.push("<li id='" + key + "'>" + val + "</li>");
        $.each(val, function (key2, val2) {
           items2.push("<li id='" + key2 + "'>" + val2 + "</li>");
        });
    });
    console.log(items);
    console.log(items2);
    
    var OnePointData={“GetQuestions”:{“s1”:“Q1,Q2”,“s2”:“Q1,Q2,Q3”,“s3”:“Q1,Q2,Q4”,“s4”:“Q1,Q2,Q4,Q6”},
    “获取问题2”:{“s1”:“Q1,Q2”,“s2”:“Q1,Q2,Q3”,“s3”:“Q1,Q2,Q4”,“s4”:“Q1,Q2,Q4,Q6”};
    var项目=[];
    var items2=[];
    $.each(OnePointData,function(key,val){
    items.push(“
  • ”+val+“
  • ”); $.each(val,function)(键2,val2){ items2.push(“
  • “+val2+”
  • ”); }); }); 控制台日志(项目); console.log(items2);
    输出:

    ["<li id='GetQuestions'>[object Object]</li>", "<li id='GetQuestions2'>[object Object]</li>"]
    
    ["<li id='s1'>Q1,Q2</li>", "<li id='s2'>Q1,Q2,Q3</li>", "<li id='s3'>Q1,Q2,Q4</li>", "<li id='s4'>Q1,Q2,Q4,Q6</li>", "<li id='s1'>Q1,Q2</li>", "<li id='s2'>Q1,Q2,Q3</li>", "<li id='s3'>Q1,Q2,Q4</li>", "<li id='s4'>Q1,Q2,Q4,Q6</li>"]
    
    [“
  • [object object]
  • ”,“
  • [object object]
  • ”] “
  • 第一季度、第二季度、第三季度”、“第三季度、第二季度、第四季度”、“第四季度、第二季度、第四季度、第六季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第六季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第六季度、第四季度、第四季度、第四季度、第四季度、第四季度、第四季度、第六季度、第四季度、第四
  • 请提供足够的数据进行复制。如果这是在ajax中,则调用show full context。还有,抛出了什么错误?听起来像是在试图解析对象而不是字符串。显示更多代码。我使用以下代码从MVC控制器返回Json数据:返回Json(f,JsonRequestBehavior.AllowGet)。。。。在上述部分中添加了更多代码。您不需要使用$.parseJSON()函数,因为OnePointData已经是一个对象。
    $.getJSON
    自动调用
    $.parseJSON
    。这就是
    $.get
    $.getJSON
    之间的全部区别。当我删除它时,我收到以下错误消息“Uncaught TypeError:无法使用'in'运算符在GetQuestions中搜索'11'”。错误发生在第二次$.each()调用中?是的,它发生在第二次调用中……当我使用第一次调用时,它只抓取对象“GetQuestions”。我想获取该块中的所有值…请查看第一次调用结果的更新图像。
    var OnePointData = {"GetQuestions":{"s1":"Q1,Q2","s2":"Q1,Q2,Q3","s3":"Q1,Q2,Q4","s4":"Q1,Q2,Q4,Q6"},
                        "GetQuestions2":{"s1":"Q1,Q2","s2":"Q1,Q2,Q3","s3":"Q1,Q2,Q4","s4":"Q1,Q2,Q4,Q6"}};
    var items = [];
    var items2 = [];
    $.each(OnePointData, function (key, val) {
        items.push("<li id='" + key + "'>" + val + "</li>");
        $.each(val, function (key2, val2) {
           items2.push("<li id='" + key2 + "'>" + val2 + "</li>");
        });
    });
    console.log(items);
    console.log(items2);
    
    ["<li id='GetQuestions'>[object Object]</li>", "<li id='GetQuestions2'>[object Object]</li>"]
    
    ["<li id='s1'>Q1,Q2</li>", "<li id='s2'>Q1,Q2,Q3</li>", "<li id='s3'>Q1,Q2,Q4</li>", "<li id='s4'>Q1,Q2,Q4,Q6</li>", "<li id='s1'>Q1,Q2</li>", "<li id='s2'>Q1,Q2,Q3</li>", "<li id='s3'>Q1,Q2,Q4</li>", "<li id='s4'>Q1,Q2,Q4,Q6</li>"]