AJAX (ang. Asynchronous JavaScript and XML, Asynchroniczny JavaScript i XML) – technika tworzenia aplikacji internetowych, w której interakcja użytkownika z serwerem odbywa się bez przeładowywania całego dokumentu. W skład AJAX wchodzą:

Pobrany już kod w języku (X)HTML jest modyfikowany (via DOM) za pomocą treści pobieranych z serwera przez obiekt XMLHttpRequest. Aplikacje oparte o powyższy schemat dokonują aktualizacji w interfejsie użytkownika szybciej niż w tradycyjnym modelu żądanie - nowa strona HTML.

Zobacz więcej w osobnym artykule: XMLHttpRequest.

Sam termin AJAX jest z wielu powodów mylący:

Dane przekazywane przez interfejs nie muszÄ… być przekazywane w formacie XML 
Alternatywy to czysty tekst czy format JSON
JÄ™zyk obsÅ‚ugujÄ…cy żądanie nie jest ograniczony do JavaScriptu 
Alternatywy to JScript czy VBScript

edytuj Wady i ograniczenia

  • UdostÄ™pnianie treÅ›ci strony poprzez jÄ™zyk skryptowy ogranicza jednak dostÄ™p do niej dla części użytkowników, którzy używajÄ… przeglÄ…darek niewyposażonych w odpowiednie funkcje, lub korzystajÄ… ze specjalnych programów (screenreader'ów) umożliwiajÄ…cych pracÄ™ z komputerem osobom niewidomym.
  • Utrudnione jest automatyczne pobieranie stron.
  • Indeksowanie przez serwisy wyszukujÄ…ce jest praktycznie uniemożliwione.
  • WiÄ™kszość analiz ruchu na stronie oparta jest o model udostÄ™pniania caÅ‚ych stron. Powyższa technika poważnie utrudnia wÅ‚aÅ›ciwy pomiar oglÄ…dalnoÅ›ci stron.
  • WadÄ… rozwiÄ…zaÅ„ w znaczÄ…cym stopniu opartych na AJAX jest fakt, że przestaje funkcjonować tradycyjny schemat przeglÄ…dania stron umożliwiajÄ…cy swobodne poruszanie siÄ™ w przód i w tyÅ‚. Przycisk Wstecz w przeglÄ…darkach internetowych nie musi już odwracać zmian wprowadzonych na stronie, gdyż te wprowadzone zostaÅ‚y interaktywnie a nie poprzez caÅ‚kowite przeÅ‚adowanie strony (co jest podstawÄ… funkcjonowania przycisku Wstecz). Nowsze aplikacje jednak umożliwiajÄ… korzystanie z funkcji "Wstecz" poprzez wykorzystywanie elementów jÄ™zyka JavaScript.

Przykład utworzenia nowego obiektu Request function ajaxFunction(){ var xmlHttp; try{

 xmlHttp=new XMLHttpRequest();
 }
 catch(e){
 try{
   xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
 }
 catch(e){
   try{
     xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
   }
   catch(e){
     alert("Your browser does not support AJAX!");
     return false;
   }
 }

} }

edytuj Zobacz

edytuj Linki zewnętrzne

Wikibooks
Zobacz publikacjÄ™ na Wikibooks:
Ajax