Recargar página en un div

HOla Carlos, por esto ya te pregunte.
La solución para cargar la página en un div era porner $("#div"). Load(pagina), pero esto cuando la llamda a la pagina es con load, pero cuando envio un formulario esto no me funciona.
Te recuerdo tengo un página con un menu y un div donde cargo las páginas del menu. Cuando cargo la página en el div y voy a otra página quiero volver a la página con el menu pero con una página cargada en el div.
Respuesta
1
A ver, si no te he entendido mal, tienes una página cargada en el div mediante load, y dentro de esa página tienes un formulario. Quieres hacer un submit de ese formulario (get o post, da igual) y claro, se te pira la página principal. Lo que quieres es que el resultado del submit se te cargue en el div como siempre, ¿no?
Bueno, si tu problema es ese, esta es la solución: el jQuery Form Plugin
Su uso es muy fácil. Primero, en tu
<head>
, referencia el script del plugin, o bien te lo descargas a tu servidor:

<script type="text/javascript" src="http://github.com/malsup/form/raw/master/jquery.form.js?v2.43">

Después, en el document.ready(), o en un script al final de la página, mete este código:
var params= {target:'#div'};
$('#miFormulario').ajaxForm(params);
... y ya está. La respuesta html que se genere tras hacer un submit de tu formulario se cargará en el div que le hayas definido en el parámetro "target". Se le pueden meter más parámetros, como se puede ver en estos ejemplos, pero con el target sólo te vale.
Espero haber entendido tu pregunta, y que el rollo que te acabo de soltar te sirva.
Te explico porque lo que me conmentas no se si es lo que necesito.
En la página director.php tengo el menu y el div donde cargo las páginas del menu.
Cuando cargo una página y envío un formulario a otra página, tengo que poner un header a director.php cuando me gustaría que se cargase una página concreta del menu en el div(por ejemplo volver a la página donde estaba el formulario).
¿Lo qué me has comentado es lo que necesito?
Lo que te he comentado te sirve para que cuando envíes el formulario a otra página, el resultado se cargue en el div, y no te machaque "director.php", no se si me explico.
¿El formulario lo tengo que meter entonces en un div?
Supongo que al cargarlo en el div luego me funcionara $("div"). load("pagina").
El div donde se carga el resultado del submit del formulario, es totalmente independiente del formulario. El formulario puede estar dentro o fuera de dicho div. En tu caso, el div donde se cargará el resultado es el div que estás usando para cargar las páginas mediante ajax. Una de las páginas que cargas en ese div tendrá un formulario. Ese formulario no hace falta que lo metas "a posta" en otro div. Lo que sí que tienes que hacer es que al final de la página que cargues (la que contiene el formulario), tienes que meter este script:

<script>

var params= {target:'#div'}; 
$('#miFormulario').ajaxForm(params);

</script>

Con esto, lo que vas a conseguir es que cuando hagas un submit del formulario, el resultado se va a cargar en el div donde cargas el resto de páginas, como si fuese una página a la que llamas desde el menú.
Por cierto: la referencia al plugin de jquery:

<script type="text/javascript" src="http://github.com/malsup/form/raw/master/jquery.form.js?v2.43">



... lo suyo es que la llames en el
<head>
de "director.php".

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas