Navigation path

AJAX

Mandatory requirementWhen choosing an Ajax toolkit, ensure that it supports WAI-ARIA.

View all IPG Rules

Asynchronous JavaScript Technology and XML (Ajax) is a group of interrelated web development techniques used on the client-side to create interactive web applications.

 

Description

Ajax isn’t a technology. It’s really several technologies, each flourishing in its own right, coming together in powerful new ways. Ajax incorporates:

  • standards-based presentation using XHTML and CSS;
  • dynamic display and interaction using the Document Object Model;
  • data interchange and manipulation using XML and XSLT;
  • asynchronous data retrieval using XMLHttpRequest;
  • and JavaScript binding everything together.

Ajax provides the ability to retrieve content from the server without changing to a new page, and the use of script to dynamically modify the HTML on the fly. With Ajax, web applications can retrieve data from the server asynchronously in the background without interfering with the display and behavior of the existing page. The use of Ajax techniques has led to an increase in interactive or dynamic interfaces on web pages.

 
 

Use on EUROPA websites

While this technology makes web pages much more dynamic and interactive, it can cause major problems for users with assistive technology and should be used with care. More importantly, reflect on whether the use of Ajax is really necessary for a given effect.

W3C has produced a language for describing interface elements and their behaviour, WAI-ARIA. When choosing an Ajax toolkit, ensure that it supports WAI-ARIA.

  • Keep the user's expectations in mind: It means not changing how things operate without letting the user know. In most Web pages, buttons are used to submit forms, so having some other action, such as the clicking of a hyperlink, to submit a form can be confusing to users. One area in which you'll have a hard time meeting expectations is with bookmarking and the Back/Forward button operations; in many cases, these will no longer work, and you'll need new ways to support bookmarking within your application.
  • Provide feedback to actions: Provide feedback that an AJAX action has taken place. With this feedback, users know that some action has happenedeven if it doesn't work as expected.
  • Maintain the user's focus when adding content: As you add feedback to your AJAX application, avoid disturbing the user's focus. This usability guideline is especially important when using popup messages; they should never be used except in areas where immediate action is required.
  • Keep the ability to undo actions: Many AJAX applications try to outthink their users by automatically saving data as needed or submitting a form without clicking a button. When this is done well, it can be effective, but you must keep the user's expectations in mind when applying these techniques.
  • Only use AJAX where it has the greatest effect: AJAX is a powerful tool, but it should be only a part of your Web development arsenal. Always make sure not to overuse AJAX. It should be used in areas where its extra capabilities provide enough benefits to overcome its drawbacks
  • Have a plan for those users without XML Http Request: have a plan for users whose browsers can't perform AJAX operations. Users who use browsers that don't support AJAX should always at least get messages that some actions won't work for them. As you add AJAX, make sure to understand your audience.