Foros del Web » Programando para Internet » Javascript »

Formulario que me de un mensaje al enviarlo

Estas en el tema de Formulario que me de un mensaje al enviarlo en el foro de Javascript en Foros del Web. Se que es con una llamada Ajax pero no se como hacerlo. lo que quiero es que cuando el formulario sea enviado no me mande ...
  #1 (permalink)  
Antiguo 10/08/2014, 18:38
 
Fecha de Ingreso: agosto-2014
Mensajes: 48
Antigüedad: 9 años, 8 meses
Puntos: 1
Formulario que me de un mensaje al enviarlo

Se que es con una llamada Ajax pero no se como hacerlo. lo que quiero es que cuando el formulario sea enviado no me mande a la dirección del action (en mi caso esta en un html y la dirección del action es un .php) sino que los campos del formulario desaparezcan y aparezca un mensaje de agradecimiento.
  #2 (permalink)  
Antiguo 10/08/2014, 20:44
 
Fecha de Ingreso: agosto-2014
Mensajes: 5
Antigüedad: 9 años, 8 meses
Puntos: 0
Respuesta: Formulario que me de un mensaje al enviarlo

Exactamente, se tiene que hacer mediante ajax y te recomiendo hacerlo con jquery.
Quitale el action al formulario agregale un id, para poder enviarlo despues por ajax. Tambien al boton para enviar agregale un id.
Código Javascript:
Ver original
  1. $(document).ready(function(){
  2. $('.IDDELBOTON').click(function(evento){
  3. evento.preventDefault();
  4. $.ajax({
  5.    url: 'archivo.php',
  6.    data: $('#IDFORMULARIO').serialize(),
  7.    success: function(resultado){
  8.     $('#dondequeresponerelresultado').html("<p>resultado</p>");
  9. }
  10.  
  11.  
  12. });
  13.  
  14.  
  15. });
  16. });

El resultado va a ser lo que imprima el archivo php
  #3 (permalink)  
Antiguo 10/08/2014, 22:26
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: Formulario que me de un mensaje al enviarlo

Al código de fede_c hay que hacerle una pequeña pero importante modificación:

Código Javascript:
Ver original
  1. //MAL
  2. $('#dondequeresponerelresultado').html("<p>resultado</p>");
  3.  
  4. //BIEN
  5. $('#dondequeresponerelresultado').html("<p>" + resultado + "</p>");

Si dejabas a la variable resultado entre las comillas, sería interpretada como una cadena de texto y nunca verías el resultado de la petición asíncrona. Concatenándola como lo hice, lograrás obtener el resultado esperado, aunque para hacer algo tan sencillo, no era necesario echar mano de una librería. También sería bueno que indiques el tipo de envío de los datos (GET o POST) mediante el atributo type. Si vas a tomar al botón por su id, debes de anteponer un # en lugar de un punto, el cual se usa para tomar al/los elemento/s por su clase, aunque de cualquier manera, lo que debes de tomar es al formulario, pero de este modo también funcionará.

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #4 (permalink)  
Antiguo 13/08/2014, 14:19
 
Fecha de Ingreso: agosto-2014
Mensajes: 5
Antigüedad: 9 años, 8 meses
Puntos: 0
Respuesta: Formulario que me de un mensaje al enviarlo

Uh, no le preste atencion a ese error, gracias por la correccion.

Etiquetas: ajax, formulario, html, mensaje, php
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 05:50.