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

problema form cargado con .load()

Estas en el tema de problema form cargado con .load() en el foro de Frameworks JS en Foros del Web. Hola, tengo un problema con un form que cargo con el método .load() de jquery. El caso es que cargo contact.php de este modo y ...
  #1 (permalink)  
Antiguo 18/05/2011, 00:53
 
Fecha de Ingreso: octubre-2006
Mensajes: 199
Antigüedad: 18 años
Puntos: 3
problema form cargado con .load()

Hola, tengo un problema con un form que cargo con el método .load() de jquery.

El caso es que cargo contact.php de este modo y luego le aplico un hastag nuevo, de manera que la URL queda #contact.php. El caso es que la validación por jquery funciona correctamente pero una vez son correctos los datos y debe de enviarlos la página salta y va directamente a contacto.php, perdiendo obviamente toda la maquetación y la integración en la página. Desde ahí sí envía correctamente los mails.

De modo que supongo que se debe a algún problema con el hashtag o con el método de carga del archivo. Más o menos lo tengo todo así:

contact.php (en este mismo archivo tengo el código php que procesa el form)
Código PHP:
<form class="cmxform" id="contact-form" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
funcion de hashchange:

Código PHP:
 $(window).bind('hashchange', function(){
        
newHash window.location.hash.substring(1);
        if (
newHash) {
            
$mainContent.load(newHash, function() {
                (
funciones.......)
                });

                $(
".thumbs a").removeClass("current");
                $(
".thumbs a[href='"+newHash+"']").addClass("current");
            });
        };

    });
    $(
window).trigger('hashchange'); 
que hace que el archivo ahora sea #contact.php.

He probado a poner directamente así en el action del form, pero tampoco funciona.

Alguna idea?

Muchas gracias!
  #2 (permalink)  
Antiguo 19/05/2011, 01:00
 
Fecha de Ingreso: noviembre-2005
Mensajes: 426
Antigüedad: 19 años
Puntos: 87
Respuesta: problema form cargado con .load()

Luego de cargar el formulario con load, o sea en la funcion que se ejecuta cuando finaliza asigne que la petición se ejecute por ajax, algo asi:

Código Javascript:
Ver original
  1. $("#contenedor").load("contact.php", function(){
  2.     $("#contact-form").submit(function(){
  3.         $.post("contact.php", $(this).serialize(),function(resultado){
  4.             // Lo que hace con el resultado que se devuelve
  5.         })
  6.         return false;
  7.     })
  8. })

Etiquetas: javascript, load, formulario
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 00:43.