我现在已经绞尽脑汁待了几个小时,并且做了大量的搜索,我似乎无法找到答案。我想知道是否可以将AJAX函数中的xmlhttp.responseText值返回到最初调用AJAX函数的函数。
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4) {
if (xmlhttp.status == 200) {
//document.getElementById("err").style.color="red";
my_response = xmlhttp.responseText;
alert(my_response);
return my_response;
}
}
}
我想将my_response变量返回给原始调用者。无论我尝试什么,我都没有成功。我甚至尝试使用window.my_response = xmlhttp.responseText将其分配给全局窗口变量,但它最终未定义。
我见过的每个使用AJAX的例子都会在if(xmlhttp.status == 200)部分内部做一些更新网页。我真的不想这样做。
我可以返回值吗?谢谢你的帮助。
顺便说一句,ajax函数工作正常,因为警报正常工作。
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4) {
//document.getElementById("err").style.color="red";
console.log(row);
row.child( format(row.data())).show();
tr.addClass('shown');
}
}
格式函数的代码在此之上。
答案 0 :(得分:-1)
我使用这个ajax交换和一个小jQuery链接:
function swapContent(href, url_data, target) {
$.ajax({
type: 'GET',
cache: false,
url: href+'?' + url_data, //add a variable to the URL that will carry the value in your i counter through to the PHP page so it know's if this is new or additional data
success: function (data) { // this param name was confusing, I have changed it to the "normal" name to make it clear that it contains the data returned from the request
//load more data to "target" value div
target.innerHTML = (data); // as above, data holds the result of the request, so all the data returned from your results.php file are in this param but please see below
}
})
}
您可以将innerHTML更改为其他内容,除非您遇到“存在地狱”错误,否则它应该有效。
它还支持其他功能,因为它是页面的交换器。