gpt4 book ai didi

javascript - 无法获取Ajax调用的返回

转载 作者:行者123 更新时间:2023-11-28 19:52:32 25 4
gpt4 key购买 nike

我正在尝试进行 AJAX 调用,该调用将返回 php 文件的回显,但它不起作用...所有文档都在同一个文件夹中。

.html 文件(javascript 部分):

<script>

function GetData()
{
var xmlhttp;

xmlhttp=new XMLHttpRequest();

xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
return xmlhttp.responseText;
}
}
xmlhttp.open("GET","test.php",true);
xmlhttp.send();
}

var Order2 = GetData();
document.getElementById('Order2').innerHTML = Order2;
</script>

.php 文件:

<?php
echo "HELLO!";
?>

有人知道为什么这不起作用吗?我的浏览器是 Google Chrome。

提前致谢:)

最佳答案

当您使用异步操作(AJAX、超时)时,您应该改变您的方法。像这样的事情:

function GetData(callback) {

var xmlhttp = new XMLHttpRequest();

xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
callback(xmlhttp.responseText);
}
}

xmlhttp.open("GET", "test.php", true);
xmlhttp.send();
}

GetData(function(data) {
document.getElementById('Order2').innerHTML = data;
});

您无法返回,因为在您返回时尚未收到回复。这就是为什么您使用回调函数在响应到来后调用的原因。

关于javascript - 无法获取Ajax调用的返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23182882/

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