Javascript Jquery Ajax Json数据未定义
我有一个URL,可以返回JSON格式的数据。我试图使用jqueryajax调用显示每个对象的值。我一直在“未定义”。我做错了什么 数据如下: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" },
[
[
{
"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多个与我发布的数组类似的数组我已经更新了代码以包装每个数组。这假定您的数组都包含在外部数组中。