Почему XMLHttpRequest не работает на Edge? - PullRequest
0 голосов
/ 04 мая 2020

Я пытаюсь создать приложение, используя HTML, PHP и JavaScript, у меня есть эта функция, которая отлично работает на Chrome, но не работает на Edge. Может кто-то мне помочь, пожалуйста? Заранее спасибо

function GetArduinoInputs(ip, sinc)
{
    nocache = "&nocache=" + Math.random() * 1000000;
    var request = new XMLHttpRequest();
    var dataReq = [0, 0, 0];
    request.onreadystatechange = function()
    {
        if (this.readyState == 4) {
            if (this.status == 200) {
                if (this.responseXML != null && sinc == true) {
                    // extract XML data from XML file
                    document.getElementById("input1").innerHTML =
                        this.responseXML.getElementsByTagName('freeChlorine')[0].childNodes[0].nodeValue;
                    document.getElementById("input2").innerHTML =
                        this.responseXML.getElementsByTagName('pH')[0].childNodes[0].nodeValue;
                    document.getElementById("input3").innerHTML =
                        this.responseXML.getElementsByTagName('temperature')[0].childNodes[0].nodeValue;
                    document.getElementById("input4").innerHTML =
                        this.responseXML.getElementsByTagName('poolName')[0].childNodes[0].nodeValue;
                    document.getElementById("input4").style.color = "blue";                            
                }
                if (this.responseXML != null && sinc == false) {
                    dataReq[0] = this.responseXML.getElementsByTagName('freeChlorine')[0].childNodes[0].nodeValue;
                    dataReq[1] = this.responseXML.getElementsByTagName('pH')[0].childNodes[0].nodeValue;
                    dataReq[2] = this.responseXML.getElementsByTagName('temperature')[0].childNodes[0].nodeValue; 
                }                           

            } else {
                document.getElementById("input1").innerHTML = "...";                            
                document.getElementById("input2").innerHTML = "...";                            
                document.getElementById("input3").innerHTML = "...";                                                  
                document.getElementById("input4").innerHTML = "Erro de ligação"; 
                document.getElementById("input4").style.color = "red";                           
            }
        }
    }
    request.open("GET", ip + nocache, sinc);
    request.send(null);
    request.onerror = err => alert('Error:' + err.message);
    setTimeout(function(){ GetArduinoInputs(ip, sinc); }, 1000);
    return dataReq;
}

1 Ответ

0 голосов
/ 04 мая 2020

Работает на этой версии: Versão 81.0.416.68

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...