Introducción a JavaScript
¿Por qué aprender JavaScript?
¡Hola Mundo! en Mac
¡Hola Mundo! en Windows
Anatomía de una variable
Tipos de datos en JavaScript
Creación de strings
Operadores aritméticos
Conversión de tipos: Type Casting y Coerción
Conversión de tipos explícita e implícita
Estructuras de Control y Lógica
Operadores de comparación
Operadores lógicos
Ejecución condicional: if
Ejercicio: Adivina el número
Ejecución condicional: switch
Loop: for
Loop: for of
Loop: for in
Loop: while
Loop: do while
Funciones y This
Anatomía de una función
Funciones vs Métodos
Funciones puras e impuras
Arrow function y enlace léxico
Contextos de ejecución y scope chain
¿Qué es Closure?
Preguntas a Desarrolladores Senior: ¿Por qué aprender Desarrollo Web?
Manipulación de Arrays
Introducción a Arrays
Mutabilidad e inmutabilidad de Arrays
Modificación básica del final con push( ), pop( )
Iteración con map( ) y forEach( )
Filtrado y reducción con filter( ) y reduce( )
Búsqueda de elementos con find( ) y findIndex( )
Crear copias con slice( )
Spread operator: casos de uso
Programación Orientada a Objetos
Anatomía de un Objeto
Trabajando con objetos en JavaScript
Función constructora
¿Qué es una clase?
Prototipos y herencias
Herencia en la práctica
Prototipos en la práctica
this en JavaScript
Proyecto: Crea una red social
Proyecto: Crea una red social parte 2
Asincronía en JavaScript
¿Cómo funciona el JavaScript Engine?
Promesas en JavaScript
Usando Async y await en JavaScript
For await of
¿Cómo funciona la web?
¿Cómo funciona HTTP?
Método GET en JavaScript
Método POST en JavaScript
Método DELETE en JavaScript
Importancia del id en el método DELETE
ECMAScript 6 y tus siguientes pasos
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Enviar datos de un formulario web sin que la página se recargue es un desafío común en el desarrollo front-end. Aquí exploramos cómo lograrlo utilizando JavaScript para manejar eventos del formulario, estructurar datos y enviarlos al servidor. ¡Acompáñame y lo descubriremos juntos!
Un problema común al enviar formularios es que la página se actualiza, perdiendo datos temporales o interrumpiendo experiencia del usuario. Para evitarlo:
addEventListener
en el formulario para capturar cuando el usuario intenta enviar datos.event.preventDefault()
para evitar que la página se recargue al enviar el formulario.form.addEventListener('submit', function(event) {
event.preventDefault();
// Código para manejar el formulario
});
Una vez que el refresco está prevenido, necesitamos acceder a los valores del formulario:
querySelector
para encontrar elementos por su ID.value
del elemento para conseguir el texto ingresado por el usuario.const title = event.currentTarget.querySelector('#title').value;
const content = event.currentTarget.querySelector('#content').value;
Antes de enviar los datos, debemos estructurarlos en un objeto que el servidor espera recibir:
fetch
.async function createPost(title, content) {
const userID = Math.floor(Math.random() * 1000);
const post = {
title,
body: content,
userId: userID
};
// Hacer un request al servidor
}
La clave es usar fetch
para enviar un request POST con el objeto de datos:
async function createPostRequest(post) {
const response = await fetch('URL_DEL_SERVIDOR', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(post)
});
if (response.ok) {
console.log('Post creado exitosamente');
} else {
console.error('Error al crear el post');
}
}
Finalmente, debemos ejecutar nuestra función de envío dentro del controlador de eventos del formulario.
form.addEventListener('submit', function(event) {
event.preventDefault();
const title = event.currentTarget.querySelector('#title').value;
const content = event.currentTarget.querySelector('#content').value;
createPostRequest({ title, content });
});
Y así, ¡tu formulario ahora envía datos al servidor sin recargar la página, utilizando JavaScript! Siguiendo estos pasos, mejoramos la experiencia del usuario y la eficiencia de nuestras aplicaciones web. No olvides persistir, experimentar y explorar nuevas posibilidades tecnológicas. ¡El futuro del desarrollo web está en tus manos!
Aportes 13
Preguntas 3
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?