我在其他网站上看到此代码,但我没有了解具体的cFunction和url
function loadDoc(url, cFunction) {
var xhttp;
xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
cFunction(this);
}
};
xhttp.open("GET", url, true);
xhttp.send();
}
function myFunction(xhttp) {
document.getElementById("demo").innerHTML =
xhttp.responseText;
}
<div id="demo">
<h2>The XMLHttpRequest Object</h2>
<button type="button" onclick="loadDoc('ajax_info.txt', myFunction)">Change Content</button>
</div>
在您发布的代码中,有一个函数loadDoc
将另一个函数回调cFunction
作为Sercond参数。
loadDoc
使用ajax从Internet加载由urll参数标识的文档。加载文档时,将调用作为参数传递的cFunction函数,以传递当前XMLHttpRequest的引用。
所有这些事情都在用户单击按钮时完成,加载的文档为ajax_info.txt
,回调函数为myFunction] >>因此,当使用包含响应的XMLHttpRequest对象下载文档时,将调用myFunction
,因此myFunction可以读取响应并将其打印在HTML元素上]]