Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/06/2011, 15:14
augusftw
 
Fecha de Ingreso: junio-2011
Mensajes: 6
Antigüedad: 12 años, 11 meses
Puntos: 0
Pregunta Consulta formulario JQuery

Buenos días gente soy nuevo en el foro.

Les comento me baje un template que trae un formulario de contacto aparentemente en jquery (que poco entiendo de esto) y el tema es que no logro hacerlo andar. El formulario avisa correctamente cuando alguien no pone su nombre, o no pone un mensaje, o su e-mail, pero cuando ingresas todo como corresponde y tocas el boton submit no pasa nada.

Bueno les dejo el código haber donde está fallando o que es lo que hace falta.


  1. El código en la web HTML:

Código:
          <h3 class="contactTitle">Formulario de contacto:</h3>
          <!-- custom form messages start -->
          <span class="error" id="nameError">Porfavor ingresa tu nombre </span> <span class="error" id="emailError">Porfavor ingresa tu e-mail </span> <span class="error" id="emailError2">Please ingresa un e-mail valido </span> <span class="error" id="messageError">Porfavor ingresa tu mensaje </span>
          <div class="contactSuccessMessage"> <img src="images/ok.png" alt=""/>
            <h4>Gracias por contactarnos.</h4>
          </div>
          <!-- custom form messages end -->
          <!-- contact form start -->
          <div class="contactForm" id="contactForm">
            <form id="contact">
              <fieldset>
                <label for="contactName" id="name_label">Name (required)</label>
                <input type="text" name="contactName" id="contactName" size="30" value="" class="text-input" />
                <label for="contactEmail" id="email_label">Email (required)</label>
                <input type="text" name="contactEmail" id="contactEmail" size="30" value="" class="text-input" />
                <label for="contactSubject" id="subject_label">Subject </label>
                <input type="text" name="contactSubject" id="contactSubject" size="30" value="" class="text-input" />
                <label for="contactMessage" id="message_label">Message (required)</label>
                <textarea  name="contactMessage" id="contactMessage" class="text-input"></textarea>
                <p>
                  <input type="submit" name="submitMessage" class="contactButton" id="contactSubmitBtn" value=""/>
                </p>
              </fieldset>
            </form>
          </div>
          <!-- contact form end -->
  1. El archivo JS Script dentro de una carpeta que contiene los archivos del sitio web.

Código:
jQuery(function() {
  jQuery('.error').hide();
  jQuery('.contactSuccessMessage').hide();
  jQuery(".contactButton").click(function() {
		// validate and process form
		// first hide any error messages
    jQuery('.error').hide();
		
	  var name = jQuery("input#contactName").val();
		if (name == "") {
      jQuery("span#nameError").fadeIn(500);
      jQuery("input#contactName").focus();
      return false;
    }
	  var email = jQuery("input#contactEmail").val();
	  if (email == "") {
      jQuery("span#emailError").fadeIn(500);
      jQuery("input#contactEmail").focus();
      return false;
    }
	
	var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
	if(!emailReg.test(email)) {
	jQuery("span#emailError2").fadeIn(500);
    jQuery("input#contactEmail").focus();
      return false;
	}
	var subject = jQuery("input#contactSubject").val();
	
	  var msg = jQuery("textarea#contactMessage").val();
	  if (msg == "") {
	  jQuery("span#messageError").fadeIn(500);
	  jQuery("textarea#contactMessage").focus();
	  return false;
    }
		
		var dataString = 'name='+ name + '&email=' + email + '&subject=' + subject + '&msg=' + msg;
		//alert (dataString);return false;
		
	  jQuery.ajax({
      type: "POST",
      url: "php/mail.php",
      data: dataString,
      success: function() {
       jQuery("#contactForm").hide();
	   jQuery(".contactSuccessMessage")
        .fadeIn(1500);
      }
     });
    return false;
	});
});

Mi idea es que el formulario mande un email a la dirección [email protected] con los datos ingresados en el formulario.

Gracias desde ya.
Saludos.