1 Commits

Author SHA1 Message Date
Juanse Marquez
d505e030c2 Solución ejercicio 7 2026-06-01 18:48:44 -03:00
5 changed files with 67 additions and 40 deletions

View File

@@ -1,37 +1 @@
const paises = [
"Argentina", "Brasil", "Chile", "Colombia", "Ecuador",
"México", "Paraguay", "Perú", "Uruguay", "Venezuela"
];
const campo = document.querySelector("#filtro");
function construirLista(items) {
const lista = document.querySelector("#lista");
// Limpiamos la lista antes de reconstruirla.
lista.innerHTML = "";
for (const pais of items) {
const item = document.createElement("li");
item.textContent = pais;
lista.appendChild(item);
}
}
campo.addEventListener("input", () => {
const texto = campo.value.toLowerCase();
// Si el campo está vacío, mostramos todos los países.
// Si no, filtramos los que incluyan el texto ingresado.
// toLowerCase() en ambos lados hace la comparación sin distinguir mayúsculas.
if (texto === "") {
construirLista(paises);
} else {
const filtrados = paises.filter(p => p.toLowerCase().includes(texto));
// Otra forma, con indexOf:
// const filtrados = paises.filter(p => p.toLowerCase().indexOf(texto) > -1);
construirLista(filtrados);
}
});
// Mostramos todos los países al cargar la página.
construirLista(paises);
// Agregar aquí el código javascript

View File

@@ -8,8 +8,6 @@
</head>
<body>
<h1>Ejercicio 5</h1>
<input type="text" id="filtro" placeholder="Buscar país...">
<ul id="lista"></ul>
<script src="ejercicio5.js"></script>
</body>

View File

@@ -1 +1,46 @@
// Agregar aquí el código javascript
const form = document.querySelector("#formulario");
function mostrarError(id, mensaje) {
document.querySelector(id).textContent = mensaje;
}
function limpiarError(id) {
document.querySelector(id).textContent = "";
}
form.addEventListener("submit", (e) => {
e.preventDefault();
const nombre = document.querySelector("#nombre").value.trim();
const edad = document.querySelector("#edad").value.trim();
const password = document.querySelector("#password").value;
// Limpiamos todos los errores antes de volver a validar.
limpiarError("#error-nombre");
limpiarError("#error-edad");
limpiarError("#error-password");
document.querySelector("#exito").textContent = "";
let valido = true;
if (nombre === "") {
mostrarError("#error-nombre", "El nombre no puede estar vacío.");
valido = false;
}
if (edad === "" || parseInt(edad) < 0 || parseInt(edad) > 100) {
mostrarError("#error-edad", "La edad no tiene un formato válido.");
valido = false;
}
if (password.length < 8) {
mostrarError("#error-password", "La contraseña debe tener al menos 8 caracteres.");
valido = false;
}
// Solo mostramos el éxito si todos los campos son válidos.
if (valido) {
document.querySelector("#exito").textContent = "Formulario enviado correctamente.";
form.reset(); // reset() limpia todos los campos del formulario
}
});

View File

@@ -1,2 +1,6 @@
/* Agregar el código CSS necesario para el ejercicio */
.error {
color: red;
font-size: 0.5em;
}

View File

@@ -8,6 +8,22 @@
</head>
<body>
<h1>Ejercicio 7</h1>
<form id="formulario">
<div>
<input type="text" id="nombre" placeholder="Nombre">
<span class="error" id="error-nombre"></span>
</div>
<div>
<input type="number" id="edad" placeholder="Edad">
<span class="error" id="error-edad"></span>
</div>
<div>
<input type="password" id="password" placeholder="Contraseña">
<span class="error" id="error-password"></span>
</div>
<button type="submit">Enviar</button>
<p id="exito"></p>
</form>
<script src="ejercicio7.js"></script>
</body>