Compare commits
1 Commits
solucion-e
...
solucion-e
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3016e835c4 |
@@ -1 +1,35 @@
|
|||||||
// Agregar aquí el código javascript
|
const btnSumar = document.querySelector("#sumar");
|
||||||
|
const btnRestar = document.querySelector("#restar");
|
||||||
|
|
||||||
|
function actualizarVista(valor) {
|
||||||
|
const MIN = 0;
|
||||||
|
const MAX = 10;
|
||||||
|
const parrafo = document.querySelector("#contador");
|
||||||
|
parrafo.textContent = valor;
|
||||||
|
|
||||||
|
// Habilitamos o deshabilitamos los botones según el valor actual.
|
||||||
|
// Cuando disabled es true, el botón no responde a clics.
|
||||||
|
btnSumar.disabled = valor === MAX;
|
||||||
|
btnRestar.disabled = valor === MIN;
|
||||||
|
}
|
||||||
|
|
||||||
|
btnSumar.addEventListener("click", () => {
|
||||||
|
// Obtenermos el valor actual
|
||||||
|
let valor = parseInt(document.querySelector('#contador').textContent);
|
||||||
|
// Sumamos 1
|
||||||
|
valor++;
|
||||||
|
// y actualizamos la vista
|
||||||
|
actualizarVista(valor);
|
||||||
|
});
|
||||||
|
|
||||||
|
btnRestar.addEventListener("click", () => {
|
||||||
|
// Obtenermos el valor actual
|
||||||
|
let valor = parseInt(document.querySelector('#contador').textContent);
|
||||||
|
// Restamos 1
|
||||||
|
valor--;
|
||||||
|
// y actualizamos la vista
|
||||||
|
actualizarVista(valor);
|
||||||
|
});
|
||||||
|
|
||||||
|
// Llamamos a actualizarVista al inicio para establecer el estado inicial en 5.
|
||||||
|
actualizarVista(5);
|
||||||
|
|||||||
@@ -8,6 +8,11 @@
|
|||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<h1>Ejercicio 4</h1>
|
<h1>Ejercicio 4</h1>
|
||||||
|
<p>
|
||||||
|
<button id="restar">Restar</button>
|
||||||
|
<span id="contador">0</span>
|
||||||
|
<button id="sumar">Sumar</button>
|
||||||
|
</p>
|
||||||
|
|
||||||
<script src="ejercicio4.js"></script>
|
<script src="ejercicio4.js"></script>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
@@ -1,46 +1 @@
|
|||||||
const form = document.querySelector("#formulario");
|
// Agregar aquí el código javascript
|
||||||
|
|
||||||
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
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|||||||
@@ -1,6 +1,2 @@
|
|||||||
/* Agregar el código CSS necesario para el ejercicio */
|
/* Agregar el código CSS necesario para el ejercicio */
|
||||||
.error {
|
|
||||||
color: red;
|
|
||||||
font-size: 0.5em;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|||||||
@@ -8,22 +8,6 @@
|
|||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<h1>Ejercicio 7</h1>
|
<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>
|
<script src="ejercicio7.js"></script>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
Reference in New Issue
Block a user