function runGetIperfSpeedAjax(speedVar, actualIp) {
var xmlhttp = getAjaxObject();
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
processIperfRequest(xmlhttp.responseText, speedVar);
}
}
xmlhttp.open('GET', 'lib/getIperfSpeed.php', true);
xmlhttp.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xmlhttp.send();
}
function processIperfRequest(response, speedVar) {
alert("proccess");
document.getElementById(speedVar).style.display = 'none';
document.getElementById('displaySpeedTest').style.display = 'block';
document.getElementById('displaySpeedTest').innerHTML = response;
}
getAjaxObject()
不包括在内,因为它只是标准的。我正在进行调用runGetIperfSpeedAjax
的onclick JavaScript调用。如果我在“lib / getIperfSpeed.php”中硬设置IP,这一切都能正常工作。但我似乎无法将actualIp
传递给“lib / getIperfSpeed.php”。我尝试'lib/getIperfSpeed.php'+actualIp
尝试传递它并通过帖子访问它。
感谢所有帮助。
答案 0 :(得分:1)
如果要将ip作为GET值传递,则必须添加GET键
function runGetIperfSpeedAjax(speedVar, actualIp) {
var xmlhttp = getAjaxObject();
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
processIperfRequest(xmlhttp.responseText, speedVar);
}
}
xmlhttp.open('GET', 'lib/getIperfSpeed.php?ip='+actualIp, true);
// missing in your code '&ip='+actualIp
xmlhttp.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xmlhttp.send();
}
function processIperfRequest(response, speedVar) {
alert("proccess");
document.getElementById(speedVar).style.display = 'none';
document.getElementById('displaySpeedTest').style.display = 'block';
document.getElementById('displaySpeedTest').innerHTML = response;
}
所以在getIperfSpeed.php
中,您获得actualIp
ip
$_GET['ip']
如果你需要通过POST传递actualIp,你需要将ajax更改为POST。