Si desea obtener un valor que el usuario escriba, tendrá que hacerlo en respuesta a algún tipo de evento. El evento de teclado ocurre (créalo o no) cuando un usuario está escribiendo y libera una clave. Si interceptas el teclado, puedes actualizar tu variable con cada pulsación de tecla, pero también debes atrapar el "cambio" para permitir pegar y arrastrar y soltar cambios que no usan el teclado. El evento de "cambio" ocurre cuando el usuario modifica el campo y luego hace clic o pestañas fuera de él.
Además, en el momento de su variable de value
es global, pero si todo lo que lo está utilizando para es fijar el valor de otro campo que no lo necesita en absoluto:
$("#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);
});
Tenga en cuenta que dentro de la función del controlador de eventos this
será el elemento dom, por lo que puede y debe obtener su valor directamente sin jQuery.
Si está utilizando una versión anterior de jQuery, use .bind()
en lugar de .on()
.
Sé que es una vieja pregunta, pero la estaba usando (y es genial, gracias), pero me di cuenta de que solo ingresaba en el primer elemento, entonces ¿tienes alguna idea de qué puedo hacer si tengo dos o más DIV? con la identificación "#dom_element"? – euDennis