Cómo usar ajax para enviar un formulario web

Puede haber leído nuestra guía jQuery, así como la quinta parte de nuestra tutorial de jQuery en AJAX, pero hoy voy a mostrar cómo utilizar AJAX para enviar dinámicamente un formulario web. JQuery es, con mucho, la forma más fácil de usar AJAX, por lo que nuestra comprobación tutorial de introducción si usted es un principiante. Saltemos a la derecha adentro.Una guía básica para jQuery javascript programadoresUna guía básica para jQuery javascript programadoresSi usted es un programador de javascript, esta guía para jQuery le ayudará a empezar a programar como un ninja.Lee mas

¿Por qué utilizar AJAX

Usted puede preguntarse “¿Por qué necesito AJAX?” HTML es perfectamente capaz de formas de presentación, y lo hace de una manera bastante indoloro. AJAX se implementa en una gran mayoría de páginas web, y su popularidad sigue en aumento.

AJAX

El gran beneficio AJAX trae es la capacidad de parcialmente cargar partes de páginas web. Esto hace que las páginas aparecen más rápido y más sensible, y ahorra ancho de banda solamente tener que volver a cargar una pequeña porción de datos en lugar de toda la página. Aquí hay algunos casos de uso básicos de AJAX:

Vídeo: Contact Form Web Application Tutorial Ajax HTML5 PHP

  • Comprobar si hay nuevos mensajes de correo electrónico con regularidad.
  • Actualizar una puntuación de fútbol en directo cada 30 segundos.
  • Actualizar el precio de una subasta en línea.

AJAX que ofrece, el desarrollador, con una capacidad casi ilimitada para hacer páginas web rápida, sensible y ágil - algo que sus visitantes se lo agradecerán.

el HTML

Antes de empezar, se necesita un formulario HTML. Si usted no sabe lo que es HTML, a continuación, lea nuestra guía de cómo hacer un sitio web para principiantes.¿Cómo hacer una página web: para principiantes¿Cómo hacer una página web: para principiantesHoy me los va a guiarle por el proceso de hacer un sitio web completo desde cero. No se preocupe si esto suena difícil. Yo te guiaré a través de él en cada paso del camino.Lee mas

Aquí está el código HTML que necesita:

lt;htmlgt;lt;cabezagt;lt;guión src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js" tipo="text / javascript"gt;guióngt;lt;guión tipo="text / javascript"gt;guióngt;cabezagt;lt;cuerpogt;lt;formar acción="algunos / archivo" método="ENVIAR" nombre="myForm" carné de identidad="myForm"gt;Nombre:lt;entrada tipo="texto" nombre="nombre"gt;Años:lt;entrada tipo="texto" nombre="años"gt;lt;entrada tipo="enviar"gt;formargt;cuerpogt;htmlgt;

Formulario HTML inicial

Este html define una forma con unos pocos elementos. Nótese cómo hay acción y método atributos. Estos definen dónde y cómo se envía el formulario. No son necesarios cuando se utiliza AJAX, pero es una buena idea usarlos, ya que garantiza que los visitantes de su sitio web todavía se puede usar si se han desactivado javascript. Esta página incluye jQuery alojado en Google en su CDN. los cabeza contiene una guión tag - aquí es donde usted va a escribir su código.Son lo CDN & ¿Por qué de almacenamiento ya no es un ProblemaSon lo CDN & ¿Por qué de almacenamiento ya no es un ProblemaCDN hacer que Internet sea rápido y sitios web accesibles incluso cuando se cambia la escala a millones de usuarios. En primer lugar, los costos de ancho de banda de dinero aquellos de nosotros en los contratos limitados saben que muy bien. No sólo usted ...Lee mas

Esta forma puede parecer un poco aburrido en este momento, por lo que es posible que desee considerar CSS aprendizaje para animar encima de un pedacito.

el javascript

Hay varias formas de enviar formularios con javascript. La primera y más fácil manera de hacerlo es a través de la enviar método:

documento.getElemenById(`MyForm`).enviar()-

Por supuesto, puede dirigirse a la forma con jQuery si lo prefiere - no hay diferencia:

Vídeo: Ajax enviar formulario sin recargar

ps(`#myForm`).enviar()-

Esta orden le dice a su navegador para enviar el formulario, exactamente igual que pulsar el botón de enviar. Se dirige a la forma por su id, y en este caso, que es myForm. Esto no es AJAX, por lo que se volverá a cargar la página entera - algo que no siempre es deseable.

En el método atributo de su formulario, se especifica la forma de presentar el formulario. Esto puede ser ENVIAR o OBTENER. Este atributo no se utiliza cuando la presentación de formas utilizando AJAX, pero el mismo método puede ser utilizado.

Gran parte de la web moderno se ejecuta fuera de peticiones GET o POST. En términos generales, se obtiene es utilizado para recuperar los datos, mientras que POST se utiliza para enviar datos (y devolver una respuesta). Los datos pueden ser enviados con GET, pero post es casi siempre la mejor opción - especialmente para los datos del formulario. Es posible que haya visto antes de peticiones GET - envían los datos adjuntos a la dirección URL:

somewebsite.com/index.html?name=Joe

El signo de interrogación indica al navegador que cualquier dato que le sigue inmediatamente, no se va a utilizar para atravesar el sitio web, sino que deben pasar a través de la página para que procese. Esto funciona bien para cosas simples como un número de página, pero tiene algunos inconvenientes:

límite máximo de caracteres: Hay un número máximo de caracteres que se pueden enviar en un URL. Puede que no tenga suficiente si usted está tratando de enviar una gran cantidad de datos.
Visibilidad: Cualquiera puede ver los datos que se envían en una petición GET - que no es bueno para los datos sensibles como contraseñas o datos de formulario.

Código de respuesta Ajax

peticiones POST funcionan de una manera similar, sólo que no envían los datos de la URL. Esto significa una mayor cantidad de datos puede ser enviado (datos se conoce como una carga útil), Y algo de seguridad no se gana con la exposición de los datos. Los datos todavía se puede acceder fácilmente, sin embargo, a fin de buscar en una certificado SSL si quieres la paz total de la mente.¿Qué es un certificado SSL, y qué necesita uno?¿Qué es un certificado SSL, y qué necesita uno?Navegar por Internet puede ser aterrador cuando la información personal está involucrado.Lee mas

Si se usa POST o GET, los datos se envían en llave -gt; valor pares. En la URL anterior, la clave es nombre, y el valor es Joe.

La mejor manera de presentar los formularios es utilizar javascript asíncrono y XML (AJAX). javascript soporta llamadas AJAX, pero puede ser confuso para su uso. JQuery implementa estos mismos métodos exactos, pero lo hace de una manera fácil de usar. Se puede indicar a su navegador para realizar una solicitud GET o POST - se adhieren a POST para este ejemplo, pero las solicitudes GET se llevan a cabo de una manera similar.

Ésta es la sintaxis:

ps.enviar(`Algunos / url`, ps(`#myForm`).publicar por fascículos())-

Este código hace varias cosas. La primera parte (ps) Permite que el navegador sepa que desea utilizar jQuery para esta tarea. La segunda parte de la llama enviar método de jQuery. Usted tiene que pasar en dos Parámetros- La primera es la url para enviar los datos a, mientras que el segundo es los datos. Es posible (dependiendo de la dirección URL que está intentando acceder), que sus navegadores del mismo origen política de seguridad puede interferir aquí. Puede habilitar el uso compartido de recursos de origen cruzado a conseguir alrededor de esto, sino que simplemente apuntando a una dirección URL alojada en el mismo dominio que la página es a menudo suficiente.

El segundo parámetro llama al jQuery publicar por fascículos método en el formulario. Este método tiene acceso a todos los datos de su forma, y ​​los prepara para la transmisión - se serializa.

Este código solo es suficiente para enviar un formulario, pero puede encontrar cosas actúan un poco extraño. Vale la pena investigar sus herramientas de desarrollo del navegador, ya que esto hace que la red de depuración solicita una brisa.

Herramientas del navegador de la consola

Alternativamente, cartero es una excelente herramienta gratuita para solicitudes HTTP prueba.

Si desea enviar su formulario utilizando AJAX cuando se pulsa el botón de enviar, eso es igual de fácil. Es necesario adjuntar el código para la enviar caso de la forma. Aquí está el código:

ps(documento).en(`enviar`,`#myForm`,función(){ps.enviar(`Algunos / url`, ps(`#myForm`).publicar por fascículos())-regreso falso-})-

Este código hace varias cosas. Cuando se envía el formulario, el navegador viene y se ejecuta el código en primer lugar. Su código a continuación, envía los datos del formulario utilizando AJAX. El último paso requerido es para evitar que la forma original de presentar - que ya ha hecho esto con AJAX, por lo que no quieren que suceda otra vez!

Si desea realizar alguna otra tarea una vez que el AJAX ha terminado (o tal vez incluso devolver un mensaje de estado), es necesario utilizar una llamar de vuelta. JQuery hace que estas muy fácil de usar - simplemente pasar una función como un parámetro más como esto:

ps.enviar(`Url`, ps(`#myForm`).publicar por fascículos(), función(resultado) {consola.Iniciar sesión(resultado)-}

los resultado argumento contiene los datos devueltos por la URL de los datos fue enviado a. Se puede responder fácilmente a estos datos:

Si(resultado == `éxito`) {// hacer alguna tarea}más {// hacer alguna otra tarea}

Eso es todo por este post. Esperemos que ahora tienen una comprensión sólida de las peticiones HTTP, y cómo AJAX funciona en el contexto de una forma.

Qué aprendió nuevos trucos hoy? ¿Cómo se utiliza AJAX con formas? Háganos saber sus pensamientos en los comentarios!

Artículos Relacionados