Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [AJAX] Nie można wysłać dwóch żądań
Babcia@Stefa
post
Post #1





Grupa: Zarejestrowani
Postów: 654
Pomógł: 17
Dołączył: 19.03.2006
Skąd: z kosmosu ;)

Ostrzeżenie: (0%)
-----


Witam, mam pewien problem z wysyłaniem żądania do serwera i pobieraniem dwóch treści. (Z serwera lokalnego)

Oto kod ajax.js
Kod
var ObiektXMLHttp;
if (window.XMLHttpRequest)
  {
   ObiektXMLHttp = new XMLHttpRequest(); }
   else if (window.ActiveXObject)
      {
       ObiektXMLHttp = new ActiveXObject("Microsoft.XMLHTTP"); }  
function view_source(source, target, params, Method) {
if(ObiektXMLHttp)
  {
   var target_name = target;
   var target = document.getElementById(target);
   if(Method == 'POST')
   {
        ObiektXMLHttp.open("POST", source, true);
        ObiektXMLHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
        ObiektXMLHttp.setRequestHeader("Content-length", params.length);
        ObiektXMLHttp.setRequestHeader("Connection", "close");
   } else {
        ObiektXMLHttp.open("GET", source, true);
   }

ObiektXMLHttp.onreadystatechange = function()
{
if (ObiektXMLHttp.readyState == 4)
   {
    var new_response = ObiektXMLHttp.responseText;
    target.innerHTML = new_response;
   }
}
if(Method == 'POST')
    ObiektXMLHttp.send(params);
else
    ObiektXMLHttp.send(null);
}
}

function disapear(window)
{
    document.getElementById(window).innerHTML = '';
}

function rand ( n )
{
  return ( Math.floor ( Math.random ( ) * n + 1 ) );
}


Potrzebuję dwa razy pobrać zawartość pewnego pliku i.. niemogę firebug wywala:
Cytat
uncaught exception: [Exception... "Component returned failure code: 0xc1f30001 (NS_ERROR_NOT_INITIALIZED) [nsIXMLHttpRequest.send]" nsresult: "0xc1f30001 (NS_ERROR_NOT_INITIALIZED)" location: "JS frame :: java script: eval(__firebugTemp__); :: anonymous :: line 1" data: no]

Line 0


W konsoli błędów to samo:
Cytat
Błąd: uncaught exception: [Exception... "Component returned failure code: 0xc1f30001 (NS_ERROR_NOT_INITIALIZED) [nsIXMLHttpRequest.send]" nsresult: "0xc1f30001 (NS_ERROR_NOT_INITIALIZED)" location: "JS frame :: java script: eval(__firebugTemp__); :: anonymous :: line 1" data: no]


W firebugu widzę że jeden obiekt się załadował:
Kod
http://localhost/.../WindowListing.php


A drugi wciąż się ładuje w nieskończoność...

Jak można to rozwiązać?

@edit
W body onload wywołuję funkcję:

Kod
    function LoadFrames()
    {
        view_source('../WindowListing.php?id=Explorer_2', 'Explorer_2', '', 'GET');
        view_source('../WindowListing.php?id=Explorer_1', 'Explorer_1', '', 'GET');
    }


@edit

Rozwiązaniem było zamiana:

Kod
ObiektXMLHttp.open("GET", source, true);


Na

Kod
ObiektXMLHttp.open("GET", source);


Dziękuję, Babcia@Stefa

Ten post edytował Babcia@Stefa 13.07.2008, 10:54:20


--------------------
Środowisko testowe (desktop) - Gedit, lighttpd, sftp, rsync, xfce4-terminal, chromium, firefox4 | System: Gentoo ~x86
O'Neill - serwer WWW @ lighttpd, links, nano, rsyncd, sftpd | System: Debian
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
paziek
post
Post #2





Grupa: Zarejestrowani
Postów: 207
Pomógł: 25
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


no wykonywać skrypt synchronicznie to jedna metoda, druga to przypisać nowy obiekt XHR do innej zmiennej i użyc tej drugiej zmiennej do wysłania/odebrania żądania
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 10:27