AJAX = Asynchronous JavaScript and XML
Ajax (Asynchronous JavaScript and XML) is a method of building interactive applications for the Web that
process user requests immediately.
Ajax combines several programming tools including JavaScript, dynamic HTML (DHTML), Extensible Markup
Language (XML), cascading style sheets (CSS), the Document Object Model (DOM), and the Microsoft object,
XMLHttpRequest.
Ajax allows content on Web pages to update immediately when a user performs an action, unlike an
HTTP request, during which users must wait for a whole new page to load.
For example, a weather forecasting site could display local conditions on one side of the page without
delay after a user types in a zip code. Google Maps is one well-known application that uses Ajax.
The interface allows the user to change views and manipulate the map in real time. Ajax applications
do not require installation of a plug-in, but work directly with a Web browser. Because of the
technique's reliance on XMLHttpRequest, early applications worked only with Microsoft's Internet
Explorer browser, but most other browsers now support Ajax. Applications created with Ajax use an
engine that acts as an intermediary between a user's browser and the server from which it is
requesting information. Instead of loading a traditional Web page, the user's browser loads the Ajax
engine, which displays the page the user sees. The engine continues to run in the background, using
JavaScript to communicate with the Web browser. User input or clicking on the page sends a JavaScript
call to the Ajax engine, which can respond instantly in many cases. If the engine needs additional
data, it requests it from the server, usually using XML, while it is simultaneously updating the page.
Ajax is not a proprietary technology or a packaged product. Web developers have been using JavaScript
and XML in combination for several years. Jesse James Garrett of the consultancy firm Adaptive Path is
credited with coining the name "Ajax" as a shorthand way to refer to the specific technologies
involved in a current approach.