function openAjax() {
  var Ajax;
  try {
    Ajax = new XMLHttpRequest(); // XMLHttpRequest para browsers mais populares, como: Firefox, Safari, dentre outros.
  } catch(ee) {
    try {
      Ajax = new ActiveXObject("Msxml2.XMLHTTP"); // Para o IE da MS
    } catch(e) {
      try {
        Ajax = new ActiveXObject("Microsoft.XMLHTTP"); // Para o IE da MS
      } catch(e) {
        Ajax = false;
      }
    }
  }
  return Ajax;
}

function carregaAjax(metodo, id, arquivo, valores) {
  if(document.getElementById) { // Para os browsers complacentes com o DOM W3C.
    var exibeResultado = document.getElementById(id); // div que exibirá o resultado.
    var Ajax = openAjax(); // Inicia o Ajax.
    Ajax.open(metodo, arquivo, true); // fazendo a requisição
    Ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    Ajax.onreadystatechange = function(){
      if(Ajax.readyState == 1) { // Quando estiver carregando, exibe: carregando...
        exibeResultado.innerHTML = '<div align=’center’><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" width="150" height="20" id="preloader" align="middle"> \n';
        exibeResultado.innerHTML = '<param name="allowScriptAccess" value="sameDomain" /> \n';
        exibeResultado.innerHTML += '<param name="movie" value="/preloader.swf" /> \n';
        exibeResultado.innerHTML += '<param name="quality" value="high" /> \n';
        exibeResultado.innerHTML += '<param name="wmode" value="transparent" /> \n';
        exibeResultado.innerHTML += '<param name="bgcolor" value="#ffffff" /> \n';
        exibeResultado.innerHTML += '<embed src="/preloader.swf" wmode="transparent" quality="high" bgcolor="#ffffff" width="150" height="20" name="preloader" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /> \n';
        exibeResultado.innerHTML += '</object> \n';
        exibeResultado.innerHTML += '</div>';
      }
      if(Ajax.readyState == 4) { // Quando estiver tudo pronto.
        if(Ajax.status == 200) {
          var resultado = Ajax.responseText; // Coloca o retornado pelo Ajax nessa variável
          resultado = resultado.replace(/\+/g," "); // Resolve o problema dos acentos (saiba mais aqui: http://www.plugsites.net/leandro/?p=4)
          resultado = unescape(resultado); // Resolve o problema dos acentos
          exibeResultado.innerHTML = resultado;
        } else {
          exibeResultado.innerHTML = "Erro: .";
        }
      }
    }
    Ajax.send(valores); // submete
  }
}


