AJAX (Asynchronous JavaScript and XML ) to asynchroniczny Javascript i XML. Interakcja z użytkownikiem odbywa się bez przeładowywania całej strony.
Technologia AJAX składa się z kilku elementów:
-XMLHttpRequest – klasa pozwalająca na asynchroniczne przesyłanie danych. Użytkownik może pobierać dane z kilku miejsc jednocześnie lub wykonywać inne czynności w trakcie pobierania danych.
-JavaScript – mimo Javascript w nazwie, tak naprawdę może to być dowolny język skryptowy działający po stronie użytkownika.
-XML – język znaczników, którym miały być opisywane odbierane informacje. W praktyce dane są często wysyłane w innych formatach (np. HTML), a odbierane jako tekst.
Dodatkowo czasami używane są jeszcze skrypty funkcjonujące po stronie serwera i współpracujące z bazami danych.
Niestety technologia AJAX ma swoje wady. Przede wszystkim nie ma możliwości poruszania się po stronie w przód i w tył (np. nie będzie można korzystać z przycisku Wstecz). Utrudnione jest również indeksowanie stron wykorzystujących AJAX. Problem ten można rozwiązać np. przygotowując mapę strony.