var http_request = false; function makeRequest( url, menuItem, id ) { http_request = false; if (window.XMLHttpRequest) { // Mozilla, Safari,... alert ("Mozzila"); http_request = new XMLHttpRequest(); if (http_request.overrideMimeType) { http_request.overrideMimeType('text/xml'); // Przeczytaj o tym wierszu poniżej } } else if (window.ActiveXObject) { // IE alert ("IE"); try { http_request = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { http_request = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } if (!http_request) { alert('Poddaję się :( Nie mogę stworzyć instancji obiektu XMLHTTP'); return false; } var parameters = 'id=' + id; http_request.onreadystatechange = function() { alertContents(http_request); }; http_request.open('POST', url, true); http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); http_request.setRequestHeader("Content-length", parameters.length); http_request.send( parameters ); } function alertContents(http_request) { if (http_request.readyState == 4) { if (http_request.status == 200) { alert (http_request.responseText); var xmldoc = http_request.responseXML; var elDocRoot = xmldoc.getElementsByTagName("root")[0]; (...) (...) }
I teraz tak pod FF elDocRoot jest Obiektem i dalsze operacje super działają.
Pod IE elDocRoot zwraca NULL. XML jest przesylany poprawnie.
Pilna sprawa z gory dzieki za wszelkie rady