我尝试使用全局变量并使用 return 子句,但离开 AJAX 函数时变量仍然为空。
http.onreadystatechange =
function() { if(http.readyState==4 && http.status==200) {
vQuantity = http.responseText;
alert(vQuantity);
}
}
警报消息(上图)向我显示了一个有效值,并且该变量是全局变量,但 AJAX 函数的返回值为 null。大家有什么想法吗?谢谢朋友,马科斯。
AJAX 例程没问题,但我想使用一个在 AJAX 例程之外加载(至少应该是)的变量,并且该变量为空。
我怎样才能做到这一点?下面你们都可以看到我的代码:
<form><input type=hidden name="ElementoQuantidade"></form>
function updateinsertAJAX(CodPagina) {
var http;
if (window.XMLHttpRequest) {
http=new XMLHttpRequest();
}
else
{
http=new ActiveXObject("Microsoft.XMLHTTP");
}
var urlalvo = "updateinsertSQL.php";
var compl = "?codpagina=" + CodPagina + "&t=";
var randomize = parseInt(Math.random()*999999999999999);
var modurl = urlalvo + compl + randomize;
http.open("GET", modurl, true);
http.onreadystatechange =
function() { if(http.readyState==4 && http.status==200) {
var vqtde = http.responseText;
document.getElementById('ElementoQuantidade').innerHTML = vqtde;
}
else
{
document.getElementById('ElementoQuantidade').innerHTML = "a lot of";
}
}
http.send();
}
实际上,我想使用那个变量 vqtde,但是当我在 AJAX 函数之外使用它时,那个变量 (vqtde) 为空。在 AJAX 函数内部,变量 (vqtde) 具有有效值。
你能指导我吗?非常感谢,祝您有愉快的一天。马科斯