gpt4 book ai didi

php - AJAX 变量作用域

转载 作者:行者123 更新时间:2023-11-30 07:17:31 24 4
gpt4 key购买 nike

有没有办法在下面的代码中在 downloadURL() 之外输出所需的 mlength?怎么办?

var markers=new Array();
var mlength=0;
downloadUrl("phpsqlajax_genxml.php", function(data) {
var xml = data.responseXML;
markers = xml.documentElement.getElementsByTagName("marker");
mlength = markers.length;
alert(mlength); //output is not 0 (ex. 3)
});
alert(mlength); //outputs 0

最佳答案

这是因为根据定义,AJAX 是异步的。到执行 alert 时,AJAX 调用尚未返回。您需要将所有使用 mlength 的代码移动到成功回调中。

另一种选择是使 AJAX 请求同步,但这通常不是您想要的,因为它往往会锁定浏览器,直到收到响应。

关于php - AJAX 变量作用域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9442726/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com