Ver Mensaje Individual
  #3 (permalink)  
Antiguo 26/06/2008, 10:13
jcvasquez
 
Fecha de Ingreso: junio-2008
Mensajes: 8
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: redireccionar pagina usando php y ajax

Amigo un millon de gracias adapte el codigo que me facilitaste al que ya tenia y funciono excelente

Mi codigo (ajax.js) era el siguiente:

Código:
/* Función que crea un nuevo objeto ajax */

function nuevoAjax() {
	
	var xmlhttp = false;
	
	try {
		
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		
	}
	catch (e) {
		
		try {
			
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
			
		} catch (E) {
			
			xmlhttp = false;
			
		}
		
	}
	
	if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
		
		xmlhttp = new XMLHttpRequest();
		
	}
	
	return xmlhttp;
	
}

/* Función para cargar una página */
/* contenedorID: ID del contenedor donde se cargará la página */
/* URL: dirección de la página que se cargará en contenedor */
/* parametros: cadena de parametros a enviar (por defecto esta vacío). Ej: par1=val1&par2=val2 */
/* metodo: especifíca si los parámetros se enviarán a través del método GET o POST */

function cargarPagina(contenedorID, URL, parametros, metodo, animar) {
	
	var contenedor = document.getElementById(contenedorID);
	var ajax = nuevoAjax();
	
	if (animar == 1)
		contenedor.innerHTML = "<center><img src='imagenes/ajax-loader.gif'/><br/><p>Cargando...</p></center>";
		
	if (animar == 2)
		contenedor.innerHTML = "<center><img src='imagenes/ajax-loader2.gif'/></center>";
	
	if (parametros == null)
		parametros = "";
	
	if (metodo.toUpperCase() == "GET") {
	
		ajax.open("GET", URL + "?" + parametros, true);
		ajax.onreadystatechange = function() {
			
			if (ajax.readyState == 4) {
				
				contenedor.innerHTML = ajax.responseText.tratarResponseText();
				
			}
			
		}
		
		ajax.send(null);
		
	}
	else {
		
		ajax.open("POST", URL, true);
		ajax.onreadystatechange = function() {
			
			if (ajax.readyState == 4) {
				
				contenedor.innerHTML = ajax.responseText.tratarResponseText();
				
			}
			
		}
	
		ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		ajax.send(parametros);
		
	}
	
}
Y adapte lo que me facilitaste (separandolo un poco porque no se entendia mucho :p), quedando asi:

Código:
/* Función que crea un nuevo objeto ajax */

function nuevoAjax() {
	
	var xmlhttp = false;
	
	try {
		
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		
	}
	catch (e) {
		
		try {
			
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
			
		} catch (E) {
			
			xmlhttp = false;
			
		}
		
	}
	
	if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
		
		xmlhttp = new XMLHttpRequest();
		
	}
	
	return xmlhttp;
	
}

/* Función para cargar una página */
/* contenedorID: ID del contenedor donde se cargará la página */
/* URL: dirección de la página que se cargará en contenedor */
/* parametros: cadena de parametros a enviar (por defecto esta vacío). Ej: par1=val1&par2=val2 */
/* metodo: especifíca si los parámetros se enviarán a través del método GET o POST */

function cargarPagina(contenedorID, URL, parametros, metodo, animar) {
	
	var contenedor = document.getElementById(contenedorID);
	var ajax = nuevoAjax();
	
	if (animar == 1)
		contenedor.innerHTML = "<center><img src='imagenes/ajax-loader.gif'/><br/><p>Cargando...</p></center>";
		
	if (animar == 2)
		contenedor.innerHTML = "<center><img src='imagenes/ajax-loader2.gif'/></center>";
	
	if (parametros == null)
		parametros = "";
		
	//prototipo que sirve para tratar la respuesta:
	String.prototype.tratarResponseText = function() {
		
		var pat=/<script[^>]*>([\S\s]*?)<\/script[^>]*>/ig;
		var pat2=/\b\s+src=[^>\s]+\b/g;
		var elementos = this.match(pat) || [];
		
		for (i = 0; i < elementos.length; i++) {
			
			var nuevoScript = document.createElement('script');
			nuevoScript.type = 'text/javascript';
			var tienesrc=elementos[i].match(pat2) || [];
			
			if (tienesrc.length) {
				nuevoScript.src=tienesrc[0].split("'").join('').split('"').join('').split('src=').join('').split(' ').join('');
			}
			else {
				
				var elemento = elementos[i].replace(pat,'$1');
				nuevoScript.text = elemento;
				
			}
			
			document.getElementsByTagName('body')[0].appendChild(nuevoScript);
			
		}
		
		return this.replace(pat,'');
	} 

	
	if (metodo.toUpperCase() == "GET") {
	
		ajax.open("GET", URL + "?" + parametros, true);
		ajax.onreadystatechange = function() {
			
			if (ajax.readyState == 4) {
				
				contenedor.innerHTML = ajax.responseText.tratarResponseText();
				
			}
			
		}
		
		ajax.send(null);
		
	}
	else {
		
		ajax.open("POST", URL, true);
		ajax.onreadystatechange = function() {
			
			if (ajax.readyState == 4) {
				
				contenedor.innerHTML = ajax.responseText.tratarResponseText();
				
			}
			
		}
	
		ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		ajax.send(parametros);
		
	}
	
}
Con esto se soluciono mi problema. De nuevo mil gracias