¿Cómo configuro un detector en jQuery/javascript para monitorear a si ha cambiado un valor en el cuadro de texto? El valor se introduce en el cuadro de texto mediante un escáner de código de barras conectado a la tableta, de modo que cada vez que se escanea un elemento, el valor en el cuadro de texto cambia. Necesito mostrar información basada en el valor en el cuadro de texto.¿Cómo configuro un detector en jQuery/javascript para monitorear un si un valor en el cuadro de texto ha cambiado?
Respuesta
¿Qué tal:
$('#textbox').change(function()
{
alert($(this).val());
});
Depende de cómo el escáner introduce el valor, y lo que hace el software del escáner después de introducir el valor.
Si el escáner desvía la atención del textarea
después de introducir el valor, que puede hacer:
$('yourTextarea').bind('change', function() {
alert("Changed to " + $(this).val());
});
Si no se necesita fuera de foco, que tendrá que vigilar las pulsaciones de teclas, y después reaccionan un período de inactividad.
$('yourTextarea').bind('keypress', function() {
var self = $(this);
clearTimeout(self.data('timeout'));
self.data('timeout', setTimeout(function() {
alert("Changed to " + $(this).val());
}, 500));
});
También cabe la posibilidad de que el escáner podría simular un evento paste
en el área de texto, así;
$('yourTextarea').bind('paste', function() {
var self = $(this);
setTimeout(function() {
alert("Changed to " + self.val());
}, 1);
});
Usted será capaz de experimentar con su escáner para ver qué método se utiliza (o poner en práctica todos ellos si usted es perezoso).
Nota que este post fue escrito en mayo de 2010, cuando la última versión de jQuery 1.6.1 era; desde entonces, bind()
ha sido reemplazado a favor de on()
. Si está utilizando una versión de jQuery> 1.7, cambie todas las ocurrencias de bind
a on
en el código anterior.
La realidad es que el evento de 'cambio' en jQuery no siempre es viable en todos los navegadores, algunos de los más antiguos no tratan el evento adecuadamente. He tenido este problema en una serie de proyectos y, por lo general, lo que debe suceder es vincular algunas propiedades de un área de texto para capturar la interacción del usuario. Si se trata de un área de entrada del tipo de texto, puede ser más simple, pero por lo general deberá cubrir sus bases con algunos oyentes de eventos.
Me gustaría echar un vistazo a cómo algunas personas que están haciendo los contadores de caracteres escriben su código para escuchar a los valores de un área de texto y luego también establecer su código de
tratar de cubrir sus bases y tal vez intentar algo como esto :
$('#textareatextID').bind('keyup click blur focus change paste', function() {
alert($(this).val());
});
Esto también evita que forma la necesidad de configurar temporizadores, y como yo no conozco el método que el escáner de código de barras se utilizan para cambiar el valor del área de texto que mi recomendación es bastante amplio.
- 1. ¿Cómo configuro el valor de un cuadro de texto usando un delimitador con jQuery?
- 2. Cómo ver si un subarchivo de un directorio ha cambiado
- 3. Cómo detectar si un elemento en mi ObservableCollection ha cambiado
- 4. ¿Cómo actualizar el valor en un cuadro de texto basado en el valor ingresado en otro cuadro de texto?
- 5. ¿Cómo configuro el texto de un cuadro de texto en negrita en tiempo de ejecución?
- 6. ¿Cómo configuro el tamaño de un cuadro de texto HTML?
- 7. ¿Cómo configuro el ancho de un cuadro de texto cuando edito una fila en un GridView?
- 8. requiere un archivo de nuevo si ha cambiado
- 9. ¿Cómo configuro el texto de un GtkTextView?
- 10. Javascript: compruebe si el elemento ha cambiado
- 11. Cómo saber si el registro ha cambiado en Postgres
- 12. ¿Cómo configuro el elemento seleccionado en un cuadro desplegable?
- 13. ¿Cómo destaco el texto en un cuadro de texto en un programa C# Winforms?
- 14. ¿Cómo solicito un valor en un cuadro de texto en un cuadro de diálogo personalizado de Wix?
- 15. ¿Cómo deserializo datos viejos para un tipo que ha cambiado?
- 16. Android: ¿Cómo configuro el tamaño de texto para un diseño?
- 17. restringe un carácter para escribir en un cuadro de texto
- 18. El uso de un cuadro de texto HTML en lugar de un cuadro de texto ASP.NET
- 19. compruebe si el valor de un campo cambió en un filtro before_update
- 20. cómo activar un cuadro de texto si selecciono otra opción en el cuadro desplegable
- 21. ¿Cómo puedo saber cuándo se ha cambiado el texto de un JComboBox editable?
- 22. ¿Cómo configuro un cuadro de texto en varias líneas en SSRS?
- 23. html() método incorrecto cuando el valor de entrada ha cambiado
- 24. cómo configurar un texto en un texto de edición que está en un cuadro de diálogo?
- 25. ¿Cómo detectar si una variable ha cambiado?
- 26. ¿Cómo detectar cuando un UIView ha cambiado de tamaño?
- 27. ¿Cómo recupero un valor de cuadro de texto usando JQuery?
- 28. jQuery: ¿Cómo puedo detectar si el html ha cambiado dentro de un elemento dado?
- 29. Cambiar el valor del cuadro de texto cuando se selecciona un elemento en el cuadro desplegable
- 30. Detectando cuando el texto de UITextField ha cambiado debido a un movimiento de deshacer?
@matt dude gracias, pero ¿por qué no se arruga cuando pego valores en él? – manraj82
para completar, querrá monitorear los eventos del mouse ya que el usuario puede hacer clic derecho y pegar también (sin mencionar el texto de arrastrar y soltar en el cuadro). – scunliffe