XMLHttpRequest, Firefox, nie wyświetla wyniku zapytania

Odpowiedz Nowy wątek
2008-10-17 15:25

Rejestracja: 12 lat temu

Ostatnio: 7 lat temu

0

Cześć,

Mam taki kawałek kodu:

<html>
    <head>
        <title></title>
    </head>
    <body>
            <script language="JavaScript" type="text/javascript">
            <!--
                var req = new XMLHttpRequest();

                req.open('GET', 'http://www.mozilla.org/', true);

                req.onreadystatechange = function (aEvt)
                {
                    if (req.readyState == 4)
                    {
                        if(req.status == 200)
                        {
                            document.write(req.responseText);
                        }
                        else
                        {
                            document.write("Błąd podczas ładowania strony\n");
                        }
                    }
                };

                req.send(null); 

            //-->
            </script>
    </body>
</html>

Jest żywcem ściągnięty ze strony moziili. Niestety na FF nie działa, a paradoksalnie na IE, Safari i Chrome jak najbardziej. Poproszę Was o podpowiedź...

Pozostało 580 znaków

2008-10-17 15:38

Rejestracja: 12 lat temu

Ostatnio: 11 miesięcy temu

0

A z jakiej choinki jest to "aEvt"?


Women were the reason I became a monk - and, ah, the reason I switched back...

Pozostało 580 znaków

2008-10-17 16:32

Rejestracja: 12 lat temu

Ostatnio: 7 lat temu

0

Usunięcie tego argumentu nie spowodowało, że ruszył ten skrypt pod FF :)

Pozostało 580 znaków

gsgdsg
2008-10-17 18:47
gsgdsg
0

a można w ten sposób pobierać dane z cudzej domeny ? wydawało mi się że nie, ale pewności nie mam bo nigdy tego nie potrzebowałem

Pozostało 580 znaków

2008-10-17 21:59

Rejestracja: 12 lat temu

Ostatnio: 11 miesięcy temu

0

Spróbuj tym:

<script language="JavaScript">
// Get the HTTP Object
function getHTTPObject(){
   if (window.ActiveXObject) return new ActiveXObject("Microsoft.XMLHTTP");
   else if (window.XMLHttpRequest) return new XMLHttpRequest();
   else {
      alert("Your browser does not support AJAX.");
      return null;
   }
}   

// Change the value of the outputText field
function setOutput(){
   if(httpObject.readyState == 4){
      responseObject.innerHTML = httpObject.responseText;
    busyStatus = false;
   }
}

// Implement business logic
function loadSite(namesite, elementid){
if (busyStatus != true) {
busyStatus = true;
responseObject = document.getElementById(elementid);
   httpObject = getHTTPObject();
   if (httpObject != null) {
      httpObject.open("GET", namesite, true);
      httpObject.send(null);
      httpObject.onreadystatechange = setOutput;
   }
}
}

var httpObject = null;
var busyStatus = null;
var responseObject = null;
</script>

Element do którego chcesz ładować musi mieć swoje ID, bo po tym ta biblioteka identyfikuje obiekt do którego ma wczytać dane. Przykład:

<span id="myBody">Proszę czekać...<br>Trwa pobieranie strony...</span>

Wywołujesz to tak:

<script language="JavaScript">
//arg1 - Adres strony
//arg2 - ID obiektu
loadSite('http://www.mozilla.org/', 'myBody');
</script>

Women were the reason I became a monk - and, ah, the reason I switched back...

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0