BAZA WIEDZY
KURSY
Bazy danych w PHP
Kurs AdvancedAJAX
Kurs ASP
Kurs ASP.NET
Kurs C++
Kurs CSS
Kurs HTML
Kurs HTML drugi
Kurs JavaScript
Kurs MySQL
Kurs PHP
Kurs RSS
Kurs XHTML
Obiekty DOM
MANUALE
CSS1 - W3C
DOM - w budowie
PHP 2005
PHP 2006
Wyrażenia regularne
SHOUTBOX
STAT
Online: 49 | UU: 3268

Wykorzystanie

AdvancedAJAX pozwala na proste i wygodne korzystanie z możliwości obiektu XMLHttpRequest. Posiada on zestaw metod umożliwiających wynikowanie zapytań typu GET, POST oraz HEAD, jak również przesyłanie treści formularzy.

Najprostszym sposobem jest wykorzystanie metod get(), post() oraz head(), w zależności od tego, jakiego typu zapytanie chcemy wysłać. Wszystkie z wymienionych metod przyjmują jeden parametr wywołania - obiekt zawierający parametry znane obiektowi i charakteryzujące zapytanie HTTP, obsługe błędów czy wznawianie połączenia podczas przekroczenia czasu oczekiwania. W przypadku, gdy przekazany parametr nie jest znany obiektowi, jest on traktowany jako argument zapytania HTTP i zostaje dodany do łańcucha zapytania (ang. query string).

Najprostsze wykorzystanie obiektu sprowadza sie do napisania kilku linijek kodu. Wykonanie poniższego kodu spowoduje pobranie treści dokumentu przekazanego w argumencie url i wyświetlenie jej w postaci okna dialogowego (globalna metoda alert()). Rezultat zapisywany jest w postaci tekstu w zmiennej .responseText, a w przypadku, gdy pobierany jest dokument XML, możemy wykorzystać zmienną .responseXML, która zawierać będzie obiekt DOM.

advAJAX.get({
  url: "http://www.example.com/page.html",
  onSuccess : function(obj) {
    alert(obj.responseText);
  }
});

Wykorzystanie w powyższym kodzie metody post() spowoduje jedynie zmianę typu wykonanego zapytania, rezultat będzie identyczny. Co jednak, jeśli podczas wykonywania zapytania wystąpi błąd, np. wywoływana strona nie będzie istnieć? Błędy się zdarzają, a ich obsługa za pomocą obiektu AdvancedAJAX sporowadza się do zarejestrowania funkcji dla metody onError. Kod błędu, np. 404 w przypadku nie znalezienia dokumentu pod zadanym adresem, zapisany jest w zmiennej .status, a jego opis w postaci tekstu (odpowiednio Not found) w .statusText (w Operze zawsze null).

advAJAX.get({
  url: "http://www.example.com/page.html",
  onSuccess : function(obj) { 
    alert(obj.responseText);
  },
  onError : function(obj) { 
    alert("Error: " + obj.status); 
  }
});

W przypadku, gdy przekazana w url strona nie będzie istnieć, na ekranie wyświetlony zostanie komunikat Error: 404. AdvancedAJAX pozwala także na wywoływanie stron wymagających podania nazwy użytkownika i hasła. Za ich wartości odpowiedzialne są, kolejno, argument username i password. W przypadku podania błędnych danych logowania, wywołana zostanie również metoda onError z odpowiednim kodem HTTP zapisanym w zmiennej .status.

advAJAX.get({
  url: "http://www.example.com/page.html",
  username : "foo",
  password : "bar",
  onSuccess : function(obj) { 
    alert(obj.responseText);
  },
  onError : function(obj) { 
    alert("Error: " + obj.status);
  }
});
Copyright © 2006-2011 egrafik.pl | Kontakt | Reklama | Projekty domów
jocker