jquery ajax $.each,jquery、ajax()和each(),如何等待所有信息真正加载?

作者探讨了一个问题,即如何在使用$.ajax从XML文件获取数据并填充变量时,确保在所有数据处理完成后才触发警报。文章讨论了在document.ready中调用函数和直接访问未准备好的数据导致的问题,以及可能的解决方案和控制流程。

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

我有一个函数使用$.ajax()从XML文件中获取值,当加载信息并激发成功事件时,我使用$(xml).find(“”)。each(function())填充一些变量…

function getData()

{

$.ajax({

type: 'GET',

url : 'info.xml',

dataType: 'xml',

success: function(xml)

{

$(xml).find('DATAS').each(function()

{

date = new Date($(this).attr('DATE'));

alert(date);

})

//Here I have a bigger find/each that should take more time

},

error: function()

{

return false;

}

});

}

在这种情况下,当我从document ready函数触发函数时,警报显示正确的数据,但是如果我从函数中删除警报并尝试这样做,则日期还没有定义:

$(document).ready(function()

{

if(getData() != false)

{

alert(date);

}

});

我想在这种情况下,数据还没有准备好?

是否有一种方法可以在整个()遍历完成并准备就绪时保持控制?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值