Quando falamos dos métodos já descritos, normalmente os usamos em conjunto para fazer páginas com informações de um banco de dados, como no caso por exemplo do próprio VOL, onde os artigos são enviados e após analisados e validados são disponibilizados.
A parte inicial desse processo exige o preenchimento de campos e mais campos até a conclusão do artigo, sempre tendo que reler toda a página. Algo bem tradicional e amplamente utilizado até o momento para quase todos os sites.
Esse tipo de processo é feito através de um formulário em HTML, com envio de dados ao servidor através dos métodos GET ou POST, exigindo do usuário pressionar um botão de envio que chama o método Submit, o qual é responsável pelo envio através do GET ou POST. É comum entretanto antes validar o que está sendo enviado através de JavaScript, fazendo um botão/link de envio chamar uma função JavaScript, a qual após aceitar os dados como válidos aciona o Submit.
Uma vez os dados enviados ao servidor, você precisa esperar ele processar e responder uma nova página a qual deve ser lida, momento o qual a tela pisca, repetindo algumas informações como o menu (dentre outras) e apresentando novas que são os resultados do processamento do servidor.
Para aliviar esse processamento lento e tedioso e reaproveitar o que deve ser mantido, existem alguns métodos utilizados como dividir a página em frames ou iframes (inline frames) que basicamente seria dividir a página em algumas áreas, para se reservar as comuns e modificar apenas as necessárias. Isso parecia ser a solução, mas com o tempo foi demonstrando problemas, pois cada frame (ou iframe) é tratado como um documento a parte, ao invés de apenas um, o que significa dor de cabeça em algumas situações, como na hora imprimir.
Com AJAX é possível contornar esse tipo de problema, se comunicando diretamente com o servidor através do objeto XMLHttpRequest existente no JavaScript. Sendo assim, você envia os dados ao servidor, ele processa e o retorna para a mesma página, sem a necessidade de carregar tudo novamente, ou utilizar frames/iframes, deixando a navegação mais rápida e mais amigável, uma vez que tudo ocorre em background (sem que você perceba) como você pode ter notado no
Google Suggest.