Javascript Jquery Ajax Json数据未定义

Javascript Jquery Ajax Json数据未定义,javascript,jquery,ajax,json,undefined,Javascript,Jquery,Ajax,Json,Undefined,我有一个URL,可以返回JSON格式的数据。我试图使用jqueryajax调用显示每个对象的值。我一直在“未定义”。我做错了什么 数据如下: [ [ { "label": "First", "value": "XXXXXX" }, { "label": "Second", "value": "XXXXXX" },

我有一个URL,可以返回JSON格式的数据。我试图使用jqueryajax调用显示每个对象的值。我一直在“未定义”。我做错了什么

数据如下:

[
    [
        {
            "label": "First",
            "value": "XXXXXX"
        },
        {
            "label": "Second",
            "value": "XXXXXX"
        },
        {
            "label": "Third",
            "value": "XXXXXX"
        },
        {
            "label": "Fourth",
            "value": "XXXXXX XXX"
        },
        {
            "label": "Fifth",
            "value": "XXXXXX"
        },
        {
            "label": "Sixth",
            "value": "XXXXXX"
        }
    ]
]
$(document).ready(function(){
    $.ajax({
        type: 'GET',
        url: 'http://url',
        dataType: 'json',
        success: function(data) {
            var items = [];
            $.each(data, function() {
                var label = items.label;
                var value = items.value;
                $('#results').append('<p>' + label + '</p>' + '<p>' + value + '</p>');
            });
        }
    });
    return false;
});
我的jQuery如下所示:

[
    [
        {
            "label": "First",
            "value": "XXXXXX"
        },
        {
            "label": "Second",
            "value": "XXXXXX"
        },
        {
            "label": "Third",
            "value": "XXXXXX"
        },
        {
            "label": "Fourth",
            "value": "XXXXXX XXX"
        },
        {
            "label": "Fifth",
            "value": "XXXXXX"
        },
        {
            "label": "Sixth",
            "value": "XXXXXX"
        }
    ]
]
$(document).ready(function(){
    $.ajax({
        type: 'GET',
        url: 'http://url',
        dataType: 'json',
        success: function(data) {
            var items = [];
            $.each(data, function() {
                var label = items.label;
                var value = items.value;
                $('#results').append('<p>' + label + '</p>' + '<p>' + value + '</p>');
            });
        }
    });
    return false;
});
$(文档).ready(函数(){
$.ajax({
键入:“GET”,
网址:'http://url',
数据类型:“json”,
成功:功能(数据){
var项目=[];
$.each(数据,函数(){
var标签=items.label;
var值=items.value;
$('#results')。追加(''+label+'

'+''+value+'

'); }); } }); 返回false; });
我的html是:

<div id="results">
</div>

您没有向每个函数添加参数:

  $.each(data, function(index,item) {
                    var label = item.label;
                    var value = item.value;
                    $('#results').append('<p>' + label + '</p>' + '<p>' + value + '</p>');
                });
$。每个(数据、函数(索引、项){
var标签=item.label;
var值=项目价值;
$('#results')。追加(''+label+'

'+''+value+'

'); });
此外,如果您的json与您编写的json非常相似,则应该执行$.each(数据[0],函数()…)

删除var项=[];从你的代码


Rest应该可以正常工作,JSON文件中的数据存储为数组中的数组。试试这个:

$(document).ready(function() {
 $.ajax({
     type: 'GET',
     url: 'http://url',
     dataType: 'json',
     success: function(data) {
         for (var i = 0; i < data.length; i++) {
             var items = data[i];

             $('#results').append('<div class="block"></div>');
             var $block = $('#results').find('.block').last();

             for (var j = 0; j < items.length; j++) {
                 var item = items[j];
                 var label = item.label;
                 var value = item.value;
                 $block.append('<p>' + label + '</p>' + '<p>' + value + '</p>');
             }
         }
     }
 });
 return false;
 });
$(文档).ready(函数(){
$.ajax({
键入:“GET”,
网址:'http://url',
数据类型:“json”,
成功:功能(数据){
对于(变量i=0;i'+''+value+'

'); } } } }); 返回false; });
谢谢你们的回答。它帮助我解决了这个问题。每一个都提供了一些有用的信息,结合所有的答案,我得到了以这种方式工作的代码

$(document).ready(function(){
    $.ajax({
        type: 'GET',
        url: 'http://url',
        dataType: 'json',
        success: function(data) {
            for (var i = 0; i < data.length; i ++ ){
                $.each(data[i], function(index, items) {
                    var label = items.label;
                    var value = items.value;
                    $('#results').append('<p>' + label + '</p>' + '<p>' + value + '</p>');
                });
            }
        }
    });
    return false;
});
$(文档).ready(函数(){
$.ajax({
键入:“GET”,
网址:'http://url',
数据类型:“json”,
成功:功能(数据){
对于(变量i=0;i'+''+value+'

'); }); } } }); 返回false; });
所以我按照Mat的建议删除了'var=items'。我还向我的each函数添加了“data[0]”和params,如user733421建议的那样,但这只显示第一个数组对象。我有近200个阵列,每个阵列上有几个对象。因此,为了遍历整个数据,我添加了0x12建议的'for'语句

现在,所有的数据都显示出来了,但是有人能确认我的方法是正确的吗


再次感谢你们伟大的团队合作

感谢您的帮助,它工作得很好,我现在的问题是如何在
上包装每个数组我有200多个与我发布的数组类似的数组我已经更新了代码以包装每个数组。这假定您的数组都包含在外部数组中。