Est-il vraiment utile d'utiliser Ajax? Ne peut-on pas se contenter de techniques plus simples, comme les iframes? Ou du DHTML?
Ajax devient nécessaire dès lors que vous voulez réaliser un site ou des pages dynamiques et que celles-ci doivent charger de nouvelles données sur le serveur, après leur affichage, à la demande de l'utilisateur ou pour renouveller leur contenu.
Ajax, outre les composantes du HTML dynamiques, à savoir JavaScript, CSS, DOM, dispose du mode asynchrone qui lui fournit l'objet XMLHttpRequest. C'est une extension au langage, implémenté sur tous les navigateurs, qui permet de communiquer avec le serveur en mode asynchrone.
Les iframes permettent d'intégrer dans la page le contenu venant d'autres pages. Mais ce contenu intégré ne fait pas partie de la page courante, on ne peut y accéder directement et le modifier. Les iframes conviennent pour afficher un contenu complémentaire venant du même site ou d'un autre site. Un exemple d'iframe est donné par le panel d'onglets CSS qui permet à l'utilisateur de choisir d'autres pages ou des images pour les afficher. Les contenus s'affichent dans une zone délimitée alors qu'Ajax permet de changer tout élément de la page elle-même.
L'iframe est un moyen plus classique de modifier une page sans la recharger entièrement, avec des données reçues du serveur, cependant l'objet XMLHttpRequest à les avantages suivants: - Il permet d'échanger des fichiers XML utilisables par l'interface DOM, ce que IFrame ne fait pas. - Il fonctionne de manière plus rapide. - Il dispose de la fonction abort(). - Il est plus simple. - Il dispose d'une liste de frameworks impressionnante. IFrame ne devrait être utilisé que lorsque XHR ne peut l'être, avec des navigateurs anciens par exemple.
Tutoriel Ajax Apprendre à utiliser Ajax, avec des exemples de code correspondant aux principaux cas.