Неперехваченная ошибка типа: не удается прочитать свойство ‘getElementsByTagName’, равное нулю по истечении контрольной сессии

#javascript #jquery #html

#javascript #jquery #HTML

Вопрос:

 document.getElementById("processingDivAdd").style.display = '';
        document.getElementById("messageDivAdd").innerHTML = '';
        xmlhttp.open("POST",url,true);
        xmlhttp.setRequestHeader("Content-Type", "text/xml");
        xmlhttp.send(dataString);

        // Set the callback
        xmlhttp.onreadystatechange = function(){
            if ( xmlhttp.readyState == 4 amp;amp; xmlhttp.status == 200 ) {
                document.getElementById("processingDivAdd").style.display = 'none';
                if(!checkSessionExpired(xmlhttp.responseXML)){
                    return;
                }
                document.getElementById("addToBook").innerHTML = xmlhttp.responseText;
                document.getElementById("addConfig").innerHTML = '';
                setup();
            }
        }

function checkSessionExpired(xmlDoc)
{
    var xAttribute = xmlDoc.getElementsByTagName('attribute');
    if(xAttribute[0] != null amp;amp; xAttribute[0].childNodes[1] != null)
    {
        if(xAttribute[0].childNodes[1].firstChild.nodeValue == 'TIME_OUT')
        {
            alert("Your session was timed out due to inactivity. Please Login to continue"); 
            document.location.href = 'login.jsp'; //...and redirect to login page.
            return false;
        }
    }
    return true;
}
  

Этот код, похоже, отлично работает в более старых версиях IE (версия 5), но он не работает в Chrome, выдавая ошибку

Неперехваченная ошибка типа: не удается прочитать свойство ‘getElementsByTagName’, равное нулю по истечении контрольной сессии

в чем может быть проблема?. Значение xmldoc равно нулю в Chrome.

Комментарии:

1. Вы передаете правильный аргумент в функцию?

2. getElementsByTagName принимает в качестве аргумента имя (p, span, div и т.д.). Вы предоставляете атрибут. это неправильно

3. @JanuszO Это все еще имя тега, обратите внимание на XML . Кроме того, проблема возникала раньше, поскольку xmlDoc не определено или является null .

4. «не удается прочитать x значение null » означает, что переменная слева от x равна null — xmlDoc.getElementsByTagName означает xmlDoc , что null не имеет ничего общего с параметрами вызова

5. developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest /… — » null, если запрос был неудачным, еще не был отправлен или если данные не могут быть проанализированы как XML или HTML » — скорее всего, последнее