Se si desidera ottenere un valore che l'utente digita, è necessario farlo in risposta a qualche tipo di evento. L'evento keyup si verifica (che ci crediate o meno) quando un utente digita e rilascia una chiave. Se si intercetta la chiave, è possibile aggiornare la variabile con ogni sequenza di tasti, ma si consiglia di intercettare anche "modifica" per consentire le modifiche di incolla e di drag'n'drop che non utilizzano la tastiera. L'evento "change" si verifica quando l'utente modifica il campo e quindi fa clic su o su schede da esso.
Inoltre, al momento la variabile value
è globale, ma se tutto quello che si utilizza per è per impostare il valore di un altro campo non è necessario affatto:
$("#txt_name").on("keyup change", function() {
$("#dom_element").text(this.value);
});
// OR, if you need the variable for some other reason:
$("#txt_name").on("keyup change", function() {
var value = this.value; // omit "var" to make it global
$("#dom_element").text(value);
});
Nota che entro la funzione di gestore eventi this
sarà l'elemento dom in modo che tu possa e debba ottenere il suo valore direttamente senza jQuery.
Se si sta utilizzando una versione precedente di jQuery, utilizzare .bind()
anziché .on()
.
Conosco una vecchia domanda, ma la stavo usando (ed è grandiosa, grazie), ma ho notato che è solo input sul primo elemento, quindi hai qualche ideia cosa posso fare se ho due o più DIV con l'ID "#dom_element"? – euDennis