"Ajax" designates the set of techniques that enable Web applications to asynchronously update small portions of the pages based on server-side data. First popularized by Google, these techniques are now being widely applied in Web applications, and increase the performance, flexibility, richness, and interactivity of Web sites and Web-based applications. However, Ajax programming is complex and poorly understood. This course gives a practical, hands-on introduction to the fundamentals of Ajax development. It covers foundational topics like JavaScript programming, core Ajax approaches, XML and JSON data handling, and Ajax development and debugging tools such as Firebug. It also covers more advanced topics like automatic JSON generation, JSON-RPC.
The course gives particular attention to the jQuery toolkit, a free and open-source JavaScript library. We give details on setting up and installing jQuery, using jQuery's Ajax support, querying and manipulating the DOM with jQuery, and using the rich GUI elements provided by jQuery UI.
The course emphasizes a practical, hands-on approach, and each section contains several annotated code examples. The companion Web site also provides free download of the complete source code from each section, exercises, and exercise solutions.