Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Al pasar datos por $.ajax no me carga la pagina que procesa.php en el div

Estas en el tema de Al pasar datos por $.ajax no me carga la pagina que procesa.php en el div en el foro de Frameworks JS en Foros del Web. Antes que todo agradecer cualquier ayuda. Bueno les comento, tengo una pagina php(index.php) dentro de esta pagina tengo un div llamado #div_contenido, en este div ...
  #1 (permalink)  
Antiguo 19/08/2009, 12:45
 
Fecha de Ingreso: marzo-2004
Ubicación: Chile
Mensajes: 382
Antigüedad: 20 años, 1 mes
Puntos: 0
Al pasar datos por $.ajax no me carga la pagina que procesa.php en el div

Antes que todo agradecer cualquier ayuda. Bueno les comento, tengo una pagina php(index.php) dentro de esta pagina tengo un div llamado #div_contenido, en este div cargo una otra página formAccesoAdmini.php (Hasta aca todo bien)que en esta página tengo un formulario donde se autentifica con nombre de usuario clave y código captcha.Mi problema es el siguiente cuando lleno el formulario y le doy el botón enviar me llama a otra página que me procesa la solicitud para ver si tiene acceso o no....pero esa respuesta ya sea positiva o negativa no me la carga en el #div_contenido del index.php....y realmente no se que estoy haciendo mal......además tengo una imagen que cuando se hace click en el botón me la muestre y tampoco lo hace.

index.php-->dentro del index.php #div_contenido -->en el #div_contenido se carga el formulario para autentificar-->el formulario llama validaAcceso que si el usuario esta OK le da la bienvenida sino envia mensaje de error

Esto ultimo no logro hacerlo, que me llege a la pagina validaAcceso.php

Les dejo el codigo se me pueden ayudar.
Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin t&iacute;tulo</title>
<link href="css/MiEstilo.css" rel="stylesheet" type="text/css" />

<!--<script src="js/jquery.js" type="text/javascript"></script>
<script src="js/funciones.js" type="text/javascript"></script>-->
<script language="javascript">
var x;
	x=$(document);
	x.ready(inicializarEventos);

	function inicializarEventos(){
  		var x;
  		x=$("#btnFormAdmin");
  		x.click(presionSubmit);
	}
	function presionSubmit(){
		//alert("Pase por aca");
  		var nombreUsuario=$("#txtAdmin").attr("value");
		var claveUsuario=$("#txtClave").attr("value");
		var codigoCaptcha=$("#CAPTCHA_CODE").attr("value");
  		$.ajax({
           async:true,
           type: "POST",
           dataType: "html",
           contentType: "application/x-www-form-urlencoded",
           url:"validaAccesoAdmin.php",
		   data:"txtAdmin="+nombreUsuario+"&txtClave="+claveUsuario+"&CAPTCHA_CODE="+codigoCaptcha,
           beforeSend:inicioEnvio,		/*Antes de enviar*/
           success:llegadaDatos,		
           timeout:4000,
           error:problemas
		   

         }); 
  		return false;
	}
	function inicioEnvio(){
  		var x=$("#divCargandoFormAdmin");
  		x.html("<img src='imagenes/cargando.gif'>");
	}
	function llegadaDatos(datos){
  		$("#div_contenido").html(datos);
	}
</script>
</head>

<body>
<p><img src="imagenes/candado.png" width="128" height="128" class="centrado"/></p>
<form name="frmAdmin" id="frmAdmin" method="post" action="validaAccesoAdmin.php">
<table width="285" align="center" class="Tablas">
  <caption>
  Bienvenido Administrador, ingresa tus Datos. 
  </caption>
    <tr>
      <td width="117"><strong>Nombre Usuario: </strong></td>
      <td width="156"><input name="txtAdmin" type="text" id="txtAdmin" /></td>
    </tr>
    <tr>
      <td><strong>Clave:</strong></td>
      <td>        <input name="txtClave" type="password" id="txtClave" />      </td>
    </tr>
    <tr>
      <td><strong>C&oacute;digo seguridad</strong></td>
      <td><img src="captcha.php" /></td>
    </tr>
    <tr>
      <td><strong>Repetir C&oacute;digo</strong></td>
      <td><input name="CAPTCHA_CODE" type="text" size="15" id="CAPTCHA_CODE" /></td>
    </tr>
    <tr>
      <td><div id="divCargandoFormAdmin"></div></td>
      <td><input name="btnFormAdmin" id="btnFormAdmin" type="submit" class="boton" value="Enviar" /></td>
     <!-- <input name="button" type="submit" class="boton" value="Enviar" onclick="validaAdministrador()" />-->
    </tr>
  </table>
 </form>
</body>
</html>
Bueno se preguntaran porque tengo entre comentarios el llamado a la librería jQuery en el head, de esta página (formAccesoAdmini.php) porque según lo que me he dado cuenta al cargar esta página en el #div_contenido del index.php hereda la llamada a la librería jQuery que tengo en el head y todos los tags de la pagina que se carga en el div.
Me aparece la pagina pero NO en el #div_contenido, me aparece al igual cuando uno le hace boton derecho a un enlace abrir en otra pagina asi mismo aparece.

Bueno yo creo saber las causas de esto a lo mejor estoy equivocado...segun yo son:
- Es por el action del formulario.(Pero si le saco el action no me hace nada ,me vuelve a cargar el index.php)

- Estoy incluyendo un HTML COMPLETO (con tags head y demás) dentro de otro. (el formAccesoAdmini.php dentro de index.php y a su vez cuando me procese el formAccesoAdmini.php que los resultados me los arroje al index.php...en un #div_contenido).

......entonces los navegadores deben estar pensando así: incluyo el formAccesoAdmini.php dentro del index en el #div_contenido(es decir, estoy en el INDEX) y el form tiene action="validaAcceso" entonces lo mando a self (index)... entonces queda como en un loop.

Bueno esperando cualquier ayuda, sugerencia o critica. Ya me desespera esto, nose como resolverlo.
  #2 (permalink)  
Antiguo 20/08/2009, 10:32
 
Fecha de Ingreso: marzo-2004
Ubicación: Chile
Mensajes: 382
Antigüedad: 20 años, 1 mes
Puntos: 0
Respuesta: Al pasar datos por $.ajax no me carga la pagina que procesa.php en el div

Ya lo solucione.....gracias en un ratito mas pongo la forma de como lo hice y una dudas que me aparecieron.
  #3 (permalink)  
Antiguo 24/09/2009, 12:11
 
Fecha de Ingreso: septiembre-2009
Mensajes: 1
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Al pasar datos por $.ajax no me carga la pagina que procesa.php en el div

Hola! Oye yo tengo el mismo problema que tu, me interesa mucho que me mandaras un mail, o publicar la solución para guiarme un poco. Muchas gracias!!!Saludos
  #4 (permalink)  
Antiguo 25/09/2009, 07:10
 
Fecha de Ingreso: marzo-2004
Ubicación: Chile
Mensajes: 382
Antigüedad: 20 años, 1 mes
Puntos: 0
Respuesta: Al pasar datos por $.ajax no me carga la pagina que procesa.php en el div

Compañero jakkie_krc de esta forma los solucione.

Código HTML:
$("#btnFormAdmin").live("click", function(){
		$.post("validaAccesoAdmin.php", {
			txtAdmin:$("#txtAdmin").val(),txtClave:$("#txtClave").val(),CAPTCHA_CODE:$("#CAPTCHA_CODE").val()
			},
			function(dataResult){
				$(" #div_contenido").html(dataResult);
				$("#txtCodigoBarras").focus();
		})	
	});
Bueno espero que te sirva de algo...suerte.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:38.