Código PHP:
if (aj_object.readyState==4) {
var _resultado = aj_object.responseText;
if (_resultado != "0") {
//alert(_resultado); //asi muestras el alert del mensaje al usuario
el_contenedor.innerHTML = _resultado; //asi muestras el mensaje del usuario en tu div
} else {
//lo que se te ocurra poner aqui si todo esta cool
el_contenedor.innerHTML = _resultado;
}
}
No sé si tendrá que ver, pero acá veo algo raro. Fijate que si se cumple la condición, se ejecuta esta línea:
Código PHP:
el_contenedor.innerHTML = _resultado;
Pero si no se cumple (else) ejecutás la misma línea.
Más allá de eso, nunca usé innerHTML (no hay ninguna razón en especial, simplemente costrumbre), así que no sé cómo debería comportarse. Tal vez podrías probar con "document.getElementById('campo_texto').value" . Pero, en realidad no sé si eso tendrá algo que ver.
En cuanto al .gif. no es muy difícil. Podrías poner la imagen dentro de un div y ese div lo ocultás o mostrás según esté cargada la respuesta o se esté procesando.
Si no me equivoco, el procesamiento en sí empieza cuando llamás a la función chkPortable(). Y termina cuando "readyState" es igual a 4.
Código PHP:
if (aj_object.readyState==4) {
Yo haría lo siguiente (debe haber muchas otras maneras pero es la que se me ocurre ahora). Haría el div con la imagen en el html y le pondría un atributo style="visibility:hidden". Con lo cual la imagen inicialmente va a estar oculta.
Al principio de la función chkPortable() pondría:
(supongamos que al div le pusiste id="cargando")
Código:
document.getElementById('cargando').style.visibility = "visible";
Con eso lo estarías mostrando.
Cuandro entres a este if significa que llegó la respuesta.
Código:
if (aj_object.readyState==4) {
Entonces, ahí agregaría:
Código:
document.getElementById('cargando').style.visibility = "hidden";
con lo cual ocultarías el div con la imagen.
Suerte