Código:
  
Aquí la pag inicial de entrada de datos.function creaAjax(){
  var objetoAjax=false;
  try {
   /*Para navegadores distintos a internet explorer*/
   objetoAjax = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (e) {
   try {
     /*Para explorer*/
     objetoAjax = new ActiveXObject("Microsoft.XMLHTTP");
     } 
     catch (E) {
     objetoAjax = false;
   }
  }
  if (!objetoAjax && typeof XMLHttpRequest!='undefined') {
   objetoAjax = new XMLHttpRequest();
  }
  return objetoAjax;
}
 function FAjax (url,capa,valores,metodo)
{
   var ajax=creaAjax();
   var capaContenedora = document.getElementById(capa);
/*Creamos y ejecutamos la instancia si el metodo elegido es POST*/
 if(metodo.toUpperCase()=='POST'){
        document.write="hola pepe";
    ajax.open ('POST', url, true);
    ajax.onreadystatechange = function() {
         if (ajax.readyState==1) {
                 capaContenedora.innerHTML="Cargando.......";
         }
         else if (ajax.readyState==4){
			 document.getElementById(capa).innerHTML=ajax.responseText; 
          /*  if(ajax.status==200)
            {
                 document.getElementById(capa).innerHTML=ajax.responseText; 
            }
            else if(ajax.status==404)
                 {
                     capaContenedora.innerHTML = "La direccion existe";
                 }*/
            /* else
                 {
                     capaContenedora.innerHTML = "Error: "+ajax.status;
                 }*/
        }
    }
    ajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    ajax.send(valores);
    return;
}
}
Código:
  
Y aqui la pag q recibe y procesa los datos.<html>
   <head>
      <title>Ajax: Ejemplo - Envío de datos por método POST</title>
       <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <script type="text/javascript" src="libreriaAjax.js"></script>
        <style type="text/css">
              #capaContenedora{
                border-style: groove double;
                padding: 10px;
                margin: 14px;
                border-color: blue;
                }
        </style>
    </head>
<body>
Este ejemplo enviará datos por método post y los pondrá la capa de abajo:<br><br>
    <div style="text-align: center;"> <form method="post" onsubmit="FAjax('ajax.asp','capaContenedora','campo1='+document.getElementById('campo1').value+'&campo2='+document.getElementById('campo2').value,'POST'); return false" action="#">
        <div style="paddi">Campo1:<input type="text" id="campo1" value="valor1" /></div>
        <div style="text-align=top;">Campo2:<input id="campo2" value="valor2"></div>
        <div><input type="submit" value="enviar"></div>
    </form></div>
    <div id="capaContenedora">Capa que recibirá los datos</div>
    <div style="text-align: center;"></div>
</body>
</html>
Código:
  
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
Campo 1 = <%= request("campo1") %><br>
Campo 2 = <%= request("campo2") %>
El problema es el siguiente. Todos los scripts funcionan bien, pero al hacer el envio y publicarlo en la capaContenedora pierdo caracteres como % * y otros como espacios. Porque puedes suceder esto?
El código funciona bien en la pag de donde lo saqué, la diferencia es q la pag q recibe los datos es una en php.
Alguien puede explicarme porqué?
Gracias de antemano.
 
 
