ajax如何请求json文件,简单的ajax请求加载外部json文件

博主在学习Ajax过程中遇到问题,尝试从同一文件夹下的JSON文件获取数据。使用XMLHttpRequest对象发送GET请求,但遇到了回调函数中people未定义的错误。在尝试将响应文本转换为JavaScript对象并进行循环时,发现对于数组长度的理解存在误区。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我在学习ajax ....我试图从json文件发出一个基本请求,它与我的index.html位于同一个文件夹中,但由于某种原因它说未定义:(我可以看到错误是可变的人,但我不能赶上为什么它未定义....简单的ajax请求加载外部json文件

HTML:

的javascript:

var xhr = new XMLHttpRequest(); //it holds the ajax request

xhr.onreadystatechange = function() { //callback

if(xhr.readyState === 4) {

var people = JSON.parse(xhr.responseText);//it takes the string from the response and it converts it in a javascript object

console.log(people);

for (var i=0; i

var htmlCode = "

" + people[i].name + "

";

}

document.getElementById('personName').innerHTML = htmlCode;

} else {

console.log(xhr.readyState);

}

};

xhr.open('GET', 'addresses.json');

xhr.send();

addresses.json:

{

"people": [

{

"position" : "1",

"name" : "Familia Molina Fernandez",

"streetType" : "C/",

"streetName " : "Nuria",

"streetNumber" : "40",

"floor" : "",

"flat" : "",

"zipCode" : "08202",

"city" : "Sabadell",

"state" : "Barcelona",

"country" : "Spain"

},

{

"position" : "2",

"name" : "Familia Astals Fernandez",

"streetType" : "Avda/",

"streetName " : "Polinya",

"streetNumber" : "61",

"floor" : "1",

"flat" : "1",

"zipCode" : "08202",

"city" : "Sabadell",

"state" : "Barcelona",

"country" : "Spain"

}

]

}

任何想法?

干杯!!!!

2015-11-03

eve_mf

+0

'people.length'有没有length属性来调用 –

+1

undefined是错误! –

+0

ohmg O__O我不是想打电话给任何财产....我通过整个数组的长度试图循环:S Oux等一下....我现在意识到....长度只是用于字符串。 ..不是吗?那我应该用什么? :S –

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值