Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Niedziałający ajax w Fx i Operze
Forum PHP.pl > Forum > XML, AJAX > AJAX
snapshot
Tworząc pierwszy skrypt napotkałem problem. Wszystko działa w IE, ale w Firefoxie i w Operze po prostu nic się nie dzieje. Używam biblioteki zXML. Drukując zmienną XmlHttp dostaję info że to obiekt - czyli teoretycznie powinno działać.

Kod
var XmlHttp = zXmlHttp.createRequest();
      //alert(XmlHttp);
      //var XmlHttp = new XMLHttpRequest();
      XmlHttp.open("get", "test.txt", true);
      XmlHttp.onreadystatechange = function() {
      if(XmlHttp.readystate == 4)
      alert("Otrzymano wynik z serwera!" + XmlHttp.responseText);
      }
      XmlHttp.send(null);
      if(XmlHttp.status == 200){
      alert("OK!");
      } else {
      alert("Błąd: "+ XMLHttp.statusText);
      }
Cezar708
użyj gotowej biblioteki (np: advAJAX) i nie będziesz się musiał martwić szczegółami smile.gif
snapshot
Ale nawet gdy daje
Kod
var XmlHttp = new XMLHttpRequest();
to nic się nie dzieje...
CrazyProgrammer
Wprowadziłem kilka istotnych poprawek i już skrypt działa yahoo.gif
kod wygląda następująco:

Kod
  function XmlHttp(url) {
    try {

      req = new XMLHttpRequest(); /* FIX dla Firefox; Opera */

    } catch(e) {

      try {

      req = new ActiveXObject("Msxml2.XMLHTTP");

    /* FIX dla IE 5.5-*/

      } catch (e) {

        try {

        req = new ActiveXObject("Microsoft.XMLHTTP");

  /* FIX dla IE6+ */

        } catch (E) {

          req = false;

        }

      }

    }
req.onreadystatechange = function() {  if(req.readyState == 4)
{
  if(req.status == 200) {alert("OK: " + req.responseText);}
   else {alert("ERROR: " + req.responseText);}};}
req.open("GET",url,true);
req.send(null);
}
XmlHttp('test.txt');


sprawdzone na IE5.5 ,IE6, IE7 także OPERA i Firefox exclamation.gif!


CrazyProgrammer - i nie ma rzeczy niemożliwych
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.