2010-09-28 22 views
6

Soy consciente de enviar los valores del formulario utilizando el método de obtener =¿Cómo envío un formulario utilizando el método GET en jQuery

<FORM METHOD=get ACTION="test.html"> 

Tengo un cuadro de texto que captura de correo electrónico. Cuando envío el formulario usando el método GET, @ se convierte a% 40. Había leído en algún lado que Jquery podía enviar los datos por serialización. ¿Cómo puede hacerse esto? Gracias

+0

No estoy muy seguro de lo que su pregunta es aquí. ¿Se trata de hacer que '' 'no se escape? Dado que ese es el comportamiento correcto: el punto es que se escapa, de modo que su código del lado del servidor puede leerlo correctamente, sin que la solicitud sea malinterpretada. Enviar el formulario a través de AJAX no cambiará eso. – Matchu

Respuesta

12

Si desea enviar un formulario utilizando jQuery serialize() y GET método, se puede hacer algo como esto:

Si utiliza PHP:

Forma:

<form action='test.php' method='GET' class='ajaxform'> 
    <input type='text' name='email'> 
</form> 

jQuery:

jQuery(document).ready(function(){ 

    jQuery('.ajaxform').submit(function() { 

     $.ajax({ 
      url  : $(this).attr('action'), 
      type : $(this).attr('method'), 
      data : $(this).serialize(), 
      success : function(response) { 
         alert(response); 
         } 
     }); 

     return false; 
    }); 

}); 

En prueba.php puede obtener correo electrónico como este:

$_GET['email']

más detalle:

http://api.jquery.com/jQuery.ajax/

+0

Gracias Naveed .. esto es exactamente lo que quería :) – Prady

+0

@Prady: Bienvenido – NAVEED

+0

Excepto que no puede recibir un correo electrónico con $ _GET ['email'] en una página html, necesitaría tener .php o. extensión phtml (a menos que configure Apache para activar el motor CGI-SCRIPT para extensiones .html) –

1

Puede utilizar la respuesta de NAVEED para enviar todo el formulario . Aunque si desea enviar un solo campo, puede usar el second parameter of the get function.

jQuery.get (url, [de datos], [de devolución de llamada (datos, textStatus, XMLHttpRequest)], [tipo de datos])

Cuestiones relacionadas