Allora facciamo una bella cosa perchè le parole le porta via il vento, ti do un esercizio da fare, mi fai una form di inserimento dati con
Nome
Cognome
Via
Numero
Città
tutti i campi sono obbligatori e devono essere valorizzati in maniera corretta, cioè nome e cognome stringhe a soli caratteri alfabetici, numero solo numeri senza caratteri speciali, tutti i campi sono obbligatori, poi mi metti un bottone che chiamerai"variazione" al click del bottone si aprirà un "alert""dialog" che contiene la form con nome, cognome, via, numero e città, ovviamente recuperando i dati che hai inserito nella form base...Quando clicchi sulla città fai una chiamata al DB e recuperi in autocomplete le città che sono inserite nella tabella "città" del Db, l'autocomplete parte dal terzo carattere inserito.
Se un utente scrive una città che non è censita all'autocomplete devi avvisare l'utente con un alert, "città non presente", quando clicchi salva dalla dialog di variazione i dati che hai variato vengono aggiornati automaticamente nel form base, se non fai variazioni al click del conferma nella dialog devi avvertire "non hai fatto variazioni"...Quando hai fatto questo poi iniziamo anche a salvare sul DB.Così vediamo come gestisci il lato client e poi il lato server.

