CIao. Dopo aver esagerato nel fare cose al di fuori della mia portata sono ritornato alle basi del linguaggio. Quindi ho una paginetta con una serie di textbox che si devono riempire tramite un pulsante “recupera”. Premetto che precedentemente ho inserito in un'altra pagina i dati che intendo recuperare(ho usato il localStorage). Premendo il fatidico pulsante “recupera" effettivamente recupero i dati che sto cercando. E' sempre lo stesso esercizio su cui sto lavorando.
1 inserisco i dati sottoforma di oggetti in un array( dbGuardia)
2 Attraverso un ciclo for ciclo tra tutti i dati presenti nell'array
3 Se trovo il cognome che sto cercando, riempio le textbox della pagina in questione, se non lo trovo mi stampa a video "Nominativo non trovato.
Problema:
A video mi stampa sempre “Nominativo non trovato” anche se trova il cognome e quindi il record cercato. E questo lo capisco.
function recupera() {
let cogn = document.getElementById('idx').value;
let dbGuardia = JSON.parse(localStorage.getItem('guardie'));
for (let i = 0; i < dbGuardia.length; i++) {
if (cogn == dbGuardia[i].cognome) {
document.getElementById('modNom').value = dbGuardia[i].nome;
document.getElementById('modCogn').value = dbGuardia[i].cognome;
document.getElementById('modInd').value = dbGuardia[i].indirizzo;
document.getElementById('modTel').value = dbGuardia[i].telefono;
}else if(cogn !==dbGuardia[i].cognome){
document.getElementById('mod').innerHTML="Nominativo non trovato";
}
}
}
La domanda è: come faccio a uscire dal ciclo quando trova il cognome cercato? Ho provato senza successo con break ma ovviamente interrompe il ciclo e se il record si trova nella 2 o 3 posizione non lo legge.
Questo è illink della pagina:
https://codepen.io/tonyven/pen/XWPXzqy