Skip to content

Commit d9ed5e3

Browse files
workshop I terminado
1 parent 439a09b commit d9ed5e3

File tree

2 files changed

+62
-3
lines changed

2 files changed

+62
-3
lines changed

index.html

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,14 +49,16 @@ <h3 class="text-content-center">Ingreso de datos</h3>
4949
<div class="row">
5050
<div class="col">
5151
<input type="text" class="form-control input-margin" placeholder="Nombre" id="input-buscar">
52-
<input type="number" class="form-control input-margin" placeholder="DNI">
52+
<input type="number" class="form-control input-margin" id="input-delete-dni" placeholder="DNI">
5353
</div>
5454
<div class="col">
5555
<button type="button" class="btn btn-success w-100" id="input-name-finder" disabled>Buscar
5656
alumno</button>
57-
<button type="button" class="btn btn-danger w-100" disabled>Eliminar alumno</button>
57+
<button type="button" class="btn btn-danger w-100" id="input-delete-student" disabled>Eliminar alumno</button>
5858
</div>
5959
</div>
60+
<button type="button" class="btn btn-outline-dark w-100" id="button-refresh">Refrescar la página</button>
61+
<button type="button" class="btn btn-outline-dark w-100" id="button-remove-storage">Limpiar Storage</button>
6062
</form>
6163
</div>
6264
</div>

script.js

Lines changed: 58 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -214,8 +214,9 @@ inputbutton1.addEventListener("click", function () {
214214
})
215215
var inputBuscar = document.querySelector("#input-buscar")
216216
var inputButton2 = document.querySelector("#input-name-finder")
217+
//Validación del input nombre para buscar alumno
217218
inputBuscar.addEventListener("input", function validarInputBuscar() {
218-
if (inputBuscar.value && !(noNumberOnName(inputBuscar.value, numeros)) && inputBuscar.value.length >= 4) {
219+
if (inputBuscar.value && !(noNumberOnName(inputBuscar.value, numeros))) {
219220
inputBuscar.classList.add("is-valid")
220221
inputButton2.disabled = false
221222
if (inputBuscar.classList.contains("is-invalid")) {
@@ -236,13 +237,15 @@ inputBuscar.addEventListener("blur", function(){
236237
inputBuscar.classList.remove("is-invalid")
237238
}
238239
})
240+
//Funciones para cambiar primeras letras a mayúsculas en string sin " " y con " " (espacios vacíos)
239241
function primeraLetraMayus(string) {
240242
return string.charAt(0).toUpperCase() + string.slice(1)
241243
}
242244
function noSpaceLetter(string) {
243245
var noSpaceLetter = string.indexOf(" ")
244246
return string.charAt(0).toUpperCase() + string.slice(1, noSpaceLetter) + " " + string.charAt(noSpaceLetter + 1).toUpperCase() + string.slice(noSpaceLetter + 2)
245247
}
248+
//Función para buscar alumno por nombre parcial o completo
246249
inputButton2.addEventListener("click", function () {
247250
inputBuscar = inputBuscar.value.toLowerCase();
248251
inputBuscar = (inputBuscar.indexOf(" ") == -1) ? primeraLetraMayus(inputBuscar) : noSpaceLetter(inputBuscar);
@@ -300,3 +303,57 @@ inputButton2.addEventListener("click", function () {
300303
}
301304
console.log(buscarAlumno())
302305
})
306+
//Función para validar la eliminación del alumno por dni
307+
var deleteStudent = document.querySelector("#input-delete-dni")
308+
var inputButton3 = document.querySelector("#input-delete-student")
309+
function dniExistente() {
310+
for (var i = 0; i <= document.querySelectorAll("li").length - 1; i++) {
311+
if (deleteStudent.value == document.querySelectorAll("li")[i].id) {
312+
return true
313+
}
314+
}
315+
return false
316+
}
317+
deleteStudent.addEventListener("input", function(){
318+
if (dniExistente()) {
319+
deleteStudent.classList.add("is-valid")
320+
inputButton3.disabled = false
321+
if (deleteStudent.classList.contains("is-invalid")) {
322+
deleteStudent.classList.replace("is-invalid", "is-valid")
323+
}
324+
} else {
325+
deleteStudent.classList.add("is-invalid")
326+
inputButton3.disabled = true
327+
if (deleteStudent.classList.contains("is-valid")) {
328+
deleteStudent.classList.replace("is-valid", "is-invalid")
329+
}
330+
}
331+
})
332+
deleteStudent.addEventListener("blur", function(){
333+
if (deleteStudent.classList.contains("is-valid")) {
334+
deleteStudent.classList.remove("is-valid")
335+
} else if (deleteStudent.classList.contains("is-invalid")) {
336+
deleteStudent.classList.remove("is-invalid")
337+
}
338+
})
339+
//Función para eliminar alumno por DNI
340+
inputButton3.addEventListener("click", function(){
341+
var objectStudents = JSON.parse(localStorage.getItem("studentInfo"));
342+
for (var i = 0; i < objectStudents.length; i++) {
343+
if (deleteStudent.value == objectStudents[i].dni) {
344+
objectStudents.splice(i)
345+
var newStorage = JSON.stringify(objectStudents)
346+
localStorage.setItem("studentInfo", newStorage)
347+
}
348+
}
349+
})
350+
//Función que refresca la página
351+
var buttonRefresh = document.querySelector("#button-refresh")
352+
buttonRefresh.addEventListener("click", function (){
353+
location.reload()
354+
})
355+
//Función para remover todo del localStorage
356+
var buttonRemoveStorage = document.querySelector("#button-remove-storage")
357+
buttonRemoveStorage.addEventListener("click", function(){
358+
localStorage.removeItem("studentInfo")
359+
})

0 commit comments

Comments
 (0)