Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/10/2006, 18:41
Avatar de giotari
giotari
Usuario no validado
 
Fecha de Ingreso: mayo-2003
Ubicación: Chile
Mensajes: 295
Antigüedad: 21 años
Puntos: 0
problema con div y loading

Lo que pasa es que estoy tratabdo de hacer un loading tipo forosdelweb cuando respondes un tema., al enviar el formulario mi¡uestra el cargando pero luego de eso en vez de cargar el archivo en el div me hace algo como un F5

Codigo ajax:

Código:
var XMLHttpRequestObject = false;

if (window.XMLHttpRequest) 
{
   XMLHttpRequestObject = new XMLHttpRequest();
} else if (window.ActiveXObject) {
        XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
}

function pedirDatos(fuenteDatos, divID)
{
        if(XMLHttpRequestObject) 
		{	

		   //Si es llamado del Registro de Newslleter	
		   if (divID=="newslleter")
			   {		
			   var txtnombre = document.getElementById('tx_nombre');
			   var txtemail = document.getElementById('tx_mail');
			   }
		   //Si es llamado del Formulario de Contacto	
		   if (divID=="form")
			   {			   		
			   var txtrut	 	 = document.getElementById('tx_rut');
			   var txtnombres 	 = document.getElementById('tx_nombres');
			   var txtapellidos	 = document.getElementById('tx_apellidos');
			   var txtdireccion  = document.getElementById('tx_direccion');
			   var slsector		 = document.getElementById('sl_sector');			   
			   
			   var txtemail 	 = document.getElementById('tx_email');
			   var txttelefono 	 = document.getElementById('tx_telefono');			   			   			   			   
			   var txtfax    	 = document.getElementById('tx_fax');			   			   			   			   		   
			   
			   var sltippat		 = document.getElementById('sl_tippat');
			   var txtubipat   	 = document.getElementById('tx_ubipat');
			   var txtpatente  	 = document.getElementById('tx_patente');
			   var txtobs	  	 = document.getElementById('tx_obs');
			   			   			   			   
			   var txtcopia		 = document.getElementById('tx_copia');
			   var txtnewslleter = document.getElementById('tx_newslleter');			   
			   var txtcargado	 = document.getElementById('tx_cargado');
			   }

		   var obj = document.getElementById(divID);
		   obj = document.getElementById(divID);  		   

		   XMLHttpRequestObject.open("POST", fuenteDatos);
		  		
		   XMLHttpRequestObject.onreadystatechange = function()
		   {
				   if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) 
				   {												
						obj.innerHTML = XMLHttpRequestObject.responseText;
				   }else{
				   		var loading = document.getElementById('cargando');
						loading = document.getElementById('cargando');  
					    loading.innerHTML = '<img src="img/gif/gl-loadingchico.gif" align="absmiddle"/> Validando Formulario...';          
				   }
		   }
		   //Si es llamado del Registro de Newslleter	
		   if (divID=="newslleter")
			   {
		   		XMLHttpRequestObject.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		   		XMLHttpRequestObject.send("txtnombre="+txtnombre.value+"&txtemail="+txtemail.value);
				}
			if (divID=="form")
				{
		   		XMLHttpRequestObject.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		   		XMLHttpRequestObject.send("txtrut="+txtrut.value+"&txtnombres="+txtnombres.value+"&txtapellidos="+txtapellidos.value+"&txtdireccion="+txtdireccion.value+"&slsector="+slsector.value+"&txtemail="+txtemail.value+"&txttelefono="+txttelefono.value+"&txtfax="+txtfax.value+"&sltippat="+sltippat.value+"&txtpatente="+txtpatente.value+"&txtobs="+txtobs.value+"&txtcargado="+txtcargado.value+"&txtcopia="+txtcopia.value+"&txtnewslleter="+txtnewslleter.value);							   			   
				}else{
				XMLHttpRequestObject.send(null);
				}

        } 
}

Codigo html:
Código HTML:
<div id="form">
	<? include ("contacto.php");?>
</div> 
Formulario:

Código HTML:
<form name="formu" method="POST" onsubmit="pedirDatos('contacto.php','form');" >
... blablabal
<form> 
la url del sitio para que puedan ver el funcionamiento es la siguiente:

http://www.munivina.cl/e-munivina/in...=frm_precarios

Se supone que si ponen el rut y el nombre y envian la solicitud deberia volver a traer los datos...(es para probar solamente)