我正在尝试为在 Siemens S7-1200 PLC 上运行的表单网页生成动态变量。我遇到的问题是,大多数问题(据我所知)是,如果我执行 console.log(xhttp.responseText),我的 xmlhttprequest.responseText 正在工作,但我无法获得responseText 变成一个变量,因为它们保持“未定义”。即使我尝试将其放入全局变量中。我已经看到很多关于“回调”的答案,但我不知道这意味着什么。
这是我的代码:
var json
function refreshVar(){
if(window.XMLHttpRequest){
xhttp = new XMLHttpRequest();
} else {
xhttp = new ActiveXobject("Microsoft.XMLHTTP");
}
xhttp.onreadystatechange = function()
{
if(xhttp.readyState == 4 && xhttp.status == 200)
{
console.log(xhttp.responseText);
console.log(json);
json = xhttp.responseText;
}
}
xhttp.open("GET", "IOCounter.html",false);
xhttp.send();
}
这是控制台中结果的图像:
https://i.imgur.com/6YpIIOo.png
在“xhttp.open()”函数中,我都尝试过 false 和 true,但没有区别。我也试过得到一个“return(xhttp.responseText)”,但也没有用
该函数也每 30 毫秒在一个重复循环中运行,因此它的更新绰绰有余。请记住,这不是全部代码,并且由于我公司的保密性,某些内容被审查。
我希望我能尽快得到一些帮助!
已经谢谢了!